`

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行。

原文链接:http://yangtingkun.itpub.net/post/468/11490

分享到:
评论

相关推荐

    oracle基本数据类型

    Oracle 基本数据类型 Oracle 中有多种基本数据类型,包括字符类型、数字类型、日期类型、二进制类型等。了解这些数据类型的特点和使用场景,对于数据库设计和开发至关重要。本文将详细介绍 Oracle 中的基本数据类型...

    Oracle实用教程_04章_Oracle数据类型和函数[整理].pdf

    Oracle 数据类型和函数 Oracle 数据类型是指一组性质相同的值的集合以及定义于这个值集合上的一组操作的总称。在 Oracle 数据库中,数据类型可以分为字符型、数值型、日期型和其它类型等几类。 Oracle 数据类型...

    Oracle基本数据类型存储格式浅析

    Oracle基本数据类型存储格式浅析(一)——字符类型 Oracle基本数据类型存储格式浅析(二)——数字类型 Oracle基本数据类型存储格式浅析(三)——日期类型 ...Oracle基本数据类型存储格式浅析(五)——RAW类型

    ORACLE中的数据类型.doc

    数据类型大约分为:character, number, date, LOB, 和RAW等类型。虽然ORACLE8i也允许你自定义数据类型,但是它们是最基本的数据类型。在下面的文章中你将了解到他们在oracle 中的用法、限制以及允许值。 l ...

    oracle支持的数据类型

    常用的数据库字段类型如下: 字段类型 中文说明 限制条件 其它说明 CHAR 固定长度字符串 ...数据类型 参数 描述 char(n) n=1 to 2000字节 定长字符串,n字节长,如果不指定长度,缺省为1个字节长(一个汉字为2字节)

    pls_interger 和binary_integer的区别与多种数据类型说明

    Oracle 中的数据类型详解 Oracle 中的数据类型可以分为四种:标量(SCALAR)、复合(COMPOSITE)、引用(REFERENCE)和 LOB。下面将详细介绍标量类型的特性。 数字类型 数字类型可以分为三种基本类型:NUMBER、...

    北大青鸟Oracle教程集1

    Oracle主要 Oracle主要 数据类型 4-1 Character 数据类型 Number 数据类型 Date 数据类型 Raw 和 Long Raw 数据类型 LOB 数据类型 Oracle 主要数据类型 4-2 Character 数据类型 ― Char ― Varchar2 ― Long Number ...

    北大青鸟Oracle教程集2

    Oracle主要 Oracle主要 数据类型 4-1 Character 数据类型 Number 数据类型 Date 数据类型 Raw 和 Long Raw 数据类型 LOB 数据类型 Oracle 主要数据类型 4-2 Character 数据类型 ― Char ― Varchar2 ― Long Number ...

    oracle中的BLOB(照片)转换到mysql中

    从oracle中的BLOB类型字段中取出照片,转存到mysql数据库中。思路是现将oracle中的照片存储在本地文件夹,在将本地图片上传到mysql中。

    Oracle数据库恢复工具Oracle Database Unloader(ODU)3.09

    支持的数据类型包括:NUMBER, CHAR, VARCHAR2, NCHAR,NVARHCAR2, LONG, DATE, RAW, LONG RAW, BLOB, CLOB, TIMESTAMP (9i+) , BINARY FLOAT, BINARY DOUBLE (10g+) 导出的数据格式包括纯文本和DMP文件两种。以纯...

    利用SQL *Plus复制遗留的Oracle数据表

    随着Large Object(LOB)数据类型的引入,LONG和LONG RAW数据类型就被抛弃了。本文介绍了SQL*PLUS中的COPY命令仍旧可以使用一条命令来完成对此类数据表的复制。文中介绍了COPY命令的格式。

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    其三、职业方向多:Oracle数据库管理方向、Oracle开发及系统架构方向、Oracle数据建模数据仓库等方向。 四、 如何学习 认真听课、多思考问题、多动手操作、有问题一定要问、多参与讨论、多帮组同学 五、 体系结构 ...

    oracle数据库修复

    支持的数据类型包括:NUMBER, CHAR, VARCHAR2, NCHAR,NVARHCAR2, LONG, DATE, RAW, LONG RAW, BLOB, CLOB, TIMESTAMP (9i+) , BINARY FLOAT, BINARY DOUBLE (10g+) 全面支持LOB字段: 支持CLOB、NCLOB和BLOB CLOB...

    oracle知识简介

    RAW:这是一种变长的二进制数据类型,采用这种数据类型存储的数据不会发生字符集的转换,可以把它看做是由数据库存储的信息的二进制字节串。最多可以存储2000字节 LONG RAW 能存储2GB的二进制信息,建议所有开发中都...

    赤兔Oracle数据库恢复软件 v11.6.zip

    5.支持的数据类型包括:NUMBER, CHAR, VARCHAR2, NCHAR,NVARHCAR2, LONG, DATE, RAW, LONG RAW, BLOB, CLOB, TIMESTAMP (9i ) , BINARY FLOAT, BINARY DOUBLE (10g ) 6.全面支持LOB字段:支持CLOB、NCLOB和BLOBCLOB...

    PL/SQL数据类型及操作符

    * 字符数据类型:包括CHAR、VARCHAR2、LONG、RAW、LONGRAW、ROWID和STRING等。这些类型可以用来存储定长字符串、可变长字符串、二进制数据和字节字符串等。 * 日期数据类型:包括DATE和TIMESTAMP等,用于存储日期和...

    Oracle 9i&10g编程艺术:深入数据库体系结构(全本)含脚本

    12.1 Oracle数据类型概述 491 12.2 字符和二进制串类型 494 12.2.1 NLS概述 494 12.2.2 字符串 497 12.3 二进制串:RAW类型 504 12.4 数值类型 506 12.4.1 NUMBER类型的语法和用法 509 12.4.2 BINARY_FLOAT/...

    Ora2PgDump:Oracle 到 PostgreSQL 转储

    以下是一些允许的数据类型转换(FROM -> to): VARCHAR2 -> 文本/varchar/char CHAR -> 文本/varchar/char 日期 -> 没有时区/日期的时间戳 TIMESTAMP -> 没有时区的时间戳 带时区的时间戳 -> 带时区的时间戳 ...

    Oracle分区表和索引

     不同的分区之间必须有相同的逻辑属性,比如共同的表名,列名,数据类型,约束;  但是可以有不同的物理属性,比如pctfree, pctused, and tablespaces.  分区独立性:即使某些分区不可用,其他分区仍然可用。  ...

    Oracle8i_9i数据库基础

    §1.7 ORACLE数据类型 38 §1.8 SQL 语句基础 44 §1.8.1 SQL语句所用符号 44 §1.8.2 简单select 查询 45 §1.9 伪列及伪表 46 §1.10 使用SQL Worksheet工作 46 第二章 查询基础 50 §2.1 SELECT语句 50 §2.2 SQL...

Global site tag (gtag.js) - Google Analytics