WEB开发网
开发学院数据库Oracle PL/SQL块定义部分之一标量类型 阅读

PL/SQL块定义部分之一标量类型

 2009-03-12 13:10:53 来源:WEB开发网   
核心提示: CHAR[(size [CHAR|BYTE])]CHAR类型有两个可选参数,CHAR和BYTE,PL/SQL块定义部分之一标量类型(4),默认为BYTE,在CHAR(size BYTE)定义中,一个是2000字节,如果我们把长度为500字节的值分别分配给这两个变量,size最大值为3276

CHAR[(size  [CHAR | BYTE] )]

CHAR类型有两个可选参数,CHAR和BYTE,默认为BYTE。

在CHAR(size BYTE)定义中,size最大值为32767,表示此数据类型最大占用32767个字节。

在CHAR(size CHAR)定义中,size最大值也为32767,上限大小仍旧是32767字节,也就是说此数据类型不一定能够存储32767个字符。比如用此数据类型存储汉字,最多能存储16383个汉字。对于双字节和多字节的字符集,我们可以使用字节最大长度的一半或三分之一作为最大字符个数。CHAR的子类型CHARACTER和CHAR有着相同的取值范围。CHARACTER只是CHAR的一个别名。这个子类型能与ANSI/ISO和IBM类型相兼容。

注意:CHAR既是PL/SQL数据类型,也是SQL数据类型,但在SQL中size的最大值为2000字节。

a CHAR  默认位1byte

a:='s';(合法)

a:='中';(Orcal报错:数字或值错误 :  字符串缓冲区太小)

b CHAR(1 char)

b:='s';(合法)

b:='中';(合法)

5、VARCHAR2    可变长度的字符,使用VARCHAR2类型时必须指定数据长度,语法如下:

VARCHAR2(size  [CHAR | BYTE])  size的最大值为32767。

对于长度不同的VARCHAR2类型数据,PL/SQL对它们的处理方式是不相同的。值小的PL/SQL会优先考虑到它的性能问题,而对于值大的PL/SQL会优先考虑到内存的使用效率问题。截止点(cutoff point)为2000个字节。在2000字节以下,PL/SQL会一次性分配我们声明时所指定大小的空间容纳实际的值;2000字节或2000字节以上时,PL/SQL会动态的分配VARCHAR2的存储容量。比如我们声明两个VARCHAR2类型的变量,一个长度是1999字节,一个是2000字节,如果我们把长度为500字节的值分别分配给这两个变量,那么前者占用的空间就是1999字节而后者只需500字节。

上一页  1 2 3 4 5 6  下一页

Tags:PL SQL 定义

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接