`

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

分享到:
评论

相关推荐

    sqlserver-oracle 数据类型对照

    - `bit`在SQL Server中没有直接对应的Oracle数据类型,但可以近似用单字节的`NUMBER(1)`表示。 - `datetime`和`smalldatetime`在SQL Server中对应Oracle的`DATE`,表示日期和时间。 - `decimal`和`numeric`在SQL ...

    oracle-java数据类型1

    在 Oracle 数据库与 Java 应用程序交互时,理解 SQL 数据类型和它们对应的 JDBC 类型以及 Oracle 扩展的 Java 类型是至关重要的。这里我们将深入探讨这些概念,并提供一个全面的指南。 首先,JDBC(Java Database ...

    Oracle与.Net 数据类型映射

    它提供了一个OracleDbType枚举,该枚举定义了所有Oracle数据类型到.NET数据类型的映射。例如,OracleDbType.Number对应.NET的decimal,OracleDbType.Varchar2对应.NET的string,OracleDbType.Date对应.NET的DateTime...

    oracle新手入门指导之四——ORACLE数据类型 .txt

    ### Oracle新手入门指导之四——ORACLE数据类型 在Oracle数据库中,数据类型的选择对于确保数据的正确存储、处理效率以及资源的有效利用至关重要。本文将详细介绍Oracle中的各种数据类型及其特性,帮助初学者更好地...

    oracle数据类型总结PPT

    以下是对Oracle数据类型的详细总结,特别是字符和二进制串类型。 首先,我们来看字符类型。Oracle提供了四种基本的字符数据类型:`CHAR`,`NCHAR`,`VARCHAR2`,以及`NVARCHAR2`。`CHAR`和`NCHAR`是固定长度的数据...

    Oracle数据类型说明

    ### Oracle 数据类型详解 #### 一、概述 Oracle 数据库提供了丰富的数据类型,这些类型能够满足各种业务场景的需求。在数据库设计中合理选择数据类型对于提高数据库性能、减少存储空间和确保数据一致性等方面都至...

    Oracle各种数据类型的介绍,适合中高级编程开发人员

    本文将详细介绍Oracle中的几种常见数据类型,并针对每种类型的特点进行分析,旨在帮助中高级编程开发人员以及初学者更好地理解和使用Oracle数据类型。 #### Character 类型 - **CHAR**: 是一种固定长度的字符类型...

    Oracle-data-type.rar_oracle

    Oracle数据库是世界上最流行的关系型数据库管理系统之一,其强大的功能和高效的数据处理能力使其在企业级应用中占据主导地位。...理解Oracle数据类型并合理选用,能够帮助我们构建更加健壮和高效的数据库系统。

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

    本文将深入探讨Oracle的字符类型、数字类型、日期类型、ROWID类型和RAW类型的基本数据类型的存储机制。 首先,让我们聚焦于字符类型。在Oracle中,主要的字符类型包括CHAR、VARCHAR2和LONG。CHAR是定长字符类型,...

    oracle基本数据类型

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

    oracle数据类型.doc

    在Oracle中,数据类型可以分为基本数据类型、对象数据类型和大型对象数据类型。以下是对Oracle主要数据类型的详细说明: 1. **Char(n)**: 这是一种定长字符串数据类型,其中n的范围是1到2000字节。如果未指定长度,...

    v512工作室_张利国_Java高端培训系列教材_Oracle实用教程_04章_Oracle数据类型和函数.

    ### Oracle 数据类型详解 #### 4.1 Oracle 数据类型 ##### 4.1.1 概述 在深入了解Oracle数据库中的各种数据类型之前,我们首先需要明确数据类型的基本概念。数据类型是由一组具有相同特性的值及其上定义的操作...

    Oracle与DB2数据类型分类对应说明

    Oracle 与 DB2 数据类型分类对应说明 Oracle 和 DB2 是两个广泛应用的关系数据库管理系统,它们都具有丰富的数据类型,用于存储和管理各种类型的数据。然而,在实际应用中,我们经常需要在 Oracle 和 DB2 之间进行...

    oracle_数据类型讲解.ppt

    Oracle 数据类型是数据库管理系统中用于存储不同类型数据的结构。在Oracle数据库中,数据类型分为多个类别,包括字符类型、数值类型、二进制类型、日期和时间类型以及特殊类型。下面将详细介绍这些数据类型。 1. **...

    sql server 和oracle 中数据类型的区别

    对应的Oracle数据类型为`NUMBER(19)`。 2. **binary**: 用于存储二进制数据,固定长度。例如,`binary(50)`表示存储50个字节的二进制数据,在Oracle中对应的类型为`RAW(50)`。 3. **bit**: 用于存储布尔值或单个位的...

    oracle和sql数据类型

    Oracle 和 SQL 数据类型是数据库管理系统中用于定义和存储数据的基础组件。它们决定了数据的结构、大小以及如何进行处理。以下是两种数据库系统中主要数据类型的详细比较: **Oracle 数据类型** 1. **Char**: Char...

    mysql与oracle数据类型对应关系.pdf

    这里我们将深入探讨MySQL与Oracle数据类型之间的对应关系,以及它们在Java编程语言中的映射。 1. MySQL数据类型: - BIGINT:MySQL中用于存储大整数,对应Oracle的NUMBER类型,可以表示非常大的数值。 - BIT:...

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

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

Global site tag (gtag.js) - Google Analytics