oracle原始数据类型,Oracle基本数据类型存储格式浅析——RAW类型
和其他数据类型相比,RAW类型的存储显得直观多了,它和SELECT时数据展示的值完全一样。(SELECT时是按照16进制展示的)
SQL> create table test_raw (id number, raw_date raw(10));
表已创建。
SQL> insert into test_raw values (1, hextoraw('ff'));
已创建 1 行。
SQL> drop table test_raw;
表已丢弃。
SQL> create table test_raw (raw_col raw(10));
表已创建。
SQL> insert into test_raw values (hextoraw('ff'));
已创建 1 行。
SQL> insert into test_raw values (hextoraw('0'));
已创建 1 行。
SQL> insert into test_raw values (hextoraw('23fc'));
已创建 1 行。
SQL> insert into test_raw values (hextoraw('fffffffffff'));
已创建 1 行。
SQL> insert into test_raw values (hextoraw('ffffffffffffffffffff'));
已创建 1 行。
SQL> insert into test_raw values (utl_raw.cast_to_raw('051'));
已创建 1 行。
SQL> select raw_col, dump(raw_col, 16) dump_raw from test_raw;
RAW_COL DUMP_RAW
-------------------- -----------------------------------------------
FF Typ=23 Len=1: ff
00 Typ=23 Len=1: 0
23FC Typ=23 Len=2: 23,fc
0FFFFFFFFFFF Typ=23 Len=6: f,ff,ff,ff,ff,ff
FFFFFFFFFFFFFFFFFFFF Typ=23 Len=10: ff,ff,ff,ff,ff,ff,ff,ff,ff,ff
303531 Typ=23 Len=3: 30,35,31
已选择6行。
RAW类型的存储很简单,对比字段的查询结果和DUMP的结果就一目了然了。
需要注意的是,两种转化为RAW的函数之间的差别。当使用HEXTORAW时,会把字符串中数据当作16进制数。而使用UTL_RAW.CAST_TO_RAW时,直接把字符串中每个字符的ASCII码存放到RAW类型的字段中。
SQL> insert into test_raw values ('gg');
insert into test_raw values ('gg')
*
ERROR 位于第 1 行:
ORA-01465: 无效的十六进制数字
SQL> insert into test_raw values (hextoraw('gg'));
insert into test_raw values (hextoraw('gg'))
*
ERROR 位于第 1 行:
ORA-01465: 无效的十六进制数字
SQL> insert into test_raw values (utl_raw.cast_to_raw('gg'));
已创建 1 行。
SQL> select raw_col, dump(raw_col, 16) dump_raw from test_raw;
RAW_COL DUMP_RAW
-------------------- ----------------------------------------------
FF Typ=23 Len=1: ff
00 Typ=23 Len=1: 0
23FC Typ=23 Len=2: 23,fc
6767 Typ=23 Len=2: 67,67
0FFFFFFFFFFF Typ=23 Len=6: f,ff,ff,ff,ff,ff
FFFFFFFFFFFFFFFFFFFF Typ=23 Len=10: ff,ff,ff,ff,ff,ff,ff,ff,ff,ff
303531 Typ=23 Len=3: 30,35,31
已选择7行。
oracle原始数据类型,Oracle基本数据类型存储格式浅析——RAW类型相关推荐
- oracle 赋值表数据类型,PL/SQL数据类型及操作符
标量(scalar)数据类型 标量(scalar)数据类型没有内部组件,他们大致可分为以下四类: . number . character . date/time . boolean 表1显示了数字数 ...
- Oracle 12C -- 扩展varchar2、nvarchar2、和raw数据类型的大小限制
在12C中,varchar2,nvarchar2和raw类型从之前的4K扩展到32K 升级到12C后,参数max_string_size默认值是standard,即不改变varchar2.nvarch ...
- oracle 测试数据类型,oracle修改表字段的数据类型测试
oracle修改表字段的数据类型的测试 思路 将要更改类型的字段名改名新字段以备份: 根据需求,添加一个与要更改类型的字段名同名的字段(原字段已经改名), 然后更新数据, 最后删除改名备份的字段 脚本 ...
- Oracle INTERVAL DAY TO SECOND数据类型
INTERVAL DAY TO SECOND数据类型 Oracle语法: INTERVAL '{ integer | integer time_expr | time_expr }' { { DAY ...
- Oracle中的常用的数据类型
Oracle中的常用的数据类型: 1.字符类型: 字符串数据类型还可以依据存储空间分为固定长度的"char",和可变长度类型的vachar.nvchar两种: Char类型: Ch ...
- java mysql nclob_java语言操作Oracle数据库中的CLOB数据类型 (转)
java语言操作Oracle数据库中的CLOB数据类型 (转)[@more@] 有关字段类型的相关信息可以查阅oracle技术网.下面摘抄一些有关blob.clob等类型的说明.又便于大家的了解. 字 ...
- oracle修改字段的默认,oracle系统默认的账号ORACLE修改表字段的数据类型
ORACLE修改表字段的数据类型 项目需求变更,需要用到备用字段,开始以为是这样改表的: alter table tablename alter column colname newDataType ...
- 【Oracle】TYPE定义的数据类型
目录 一.TYPE定义的数据类型 1.1 语法 1.2 定义RECORD记录 1.3 定义TABLE类型 1.3.1 定义单列多行的数据集合 1.3.2 定义多列多行的数据集合 二.%TYPE %RO ...
- Oracle: 一、Oracle简介,安装,基本使用,建表增删改查,数据类型及常用命令...
内容简介 一.Oracle简介,安装,基本使用,建表增删改查,数据类型及常用命令. 技术与环境 操作系统: windows 语言类别: SQL之PL/SQL 特别鸣谢: 由马云涛老师提供资料 数据库: ...
最新文章
- ARKIT/ARCore对比分析(一)
- dll的概念、dll导出类(转)
- python批量jpg转png(顺序排列1.2.3……)、修改文件夹尺寸
- 关于ping telnet
- 自学python转行-转行Python,应该如何短期自学,达到就业水平
- linux使用同一密钥对实现互相免密登录
- JS中避免命名冲突的三个方法
- etcd集群搭建(高可用)
- XFire WebService demo
- html a 点击防止刷新,a标签点击跳转页面不刷新的问题
- MVVM 下 ContextMenu的命令绑定
- Deep Image Prior:深度卷积网络先天就理解自然图像
- Github的README中插入图片,Github仓库项目主页显示图片
- 数据库——模式分解和关系范式的分解
- 计算机基础知识会议记录,电脑上会议记录怎么写?
- wordpress 后台 文章管理列表 添加自定义栏
- bochs运行xp_在bochs虚拟机中安装WindowsXP (学习)
- android 获取经纬度的三种方法,Android获取经纬度
- 2021-05-22
- 日语N2听力常用词汇