Oracle所有常用字段类型
一,字段类型、描述 、字段长度及其缺省值
1, CHAR (size)
用于保存定长(size)字节的字符串数据。 注意使用时的去空
每行定长(不足部分补为空格);最大长度为每行2000字节,缺省值为每行1字节。设置长度(size)前需考虑字符集为单字节或多字节。
2,VARCHAR2 (size)
用于保存变长的字符串数据。其中最大字节长度由(size)指定。
每行长度可变,最大长度为每行4000字节。设置长度(size)前需考虑字符集为单字节或多字节。
3, NCHAR(size)
由字符集决定保存的是定长(size)的字符或字节。
每行定长(不足部分补为空格)。对固定宽度的字符集来说,长度(size)是指字符的个数,对变宽的字符集来说,长度(size)是指字节的个数。最大长度(size)取决于保存在一个字符中的字节的长度,每行的最大长度为2000字节。由字符集决定缺省值为1个字符或1个字节。
4,NVARCHAR2 (size)
由字符集决定保存变长的字符或字节。其中最大长度由(size)指定。
每行变长。对固定宽度的字符集来说,长度(size)是指字符的个数,对变宽的字符集来说,长度(size)是指字节的个数。最大长度(size)取决于保存在一个字符中的字节的长度,每行的最大长度为4000字节。由字符集决定缺省值为1个字符或1个字节。
5,LONG
保存变长的字符串数据。
在表中每行的长度可变,最大长度为每行231 - 1字节或2G。
6,NUMBER (p, s)
保存变长的数字。其中精度的最大值为p,或有效的数字位数s的最大值38。
每行变长。每行的最大长度为21字节。
number型既可以用来表示整数,又可表示小数。P为数的精度,为数值中所有数字位的个数。S为数的刻度范围,是小数点右面数字位的个数。则允许的整数位的最大数字个数为p-s。p的最大值为38 ,s的范围是-84~127 。
如果给变量赋予的值的整数位数超过了p-s的值,就会报错,如:
declare
id number(5,1);
begin
id:=12321;
dbms_output.put_line(id);
end;
错误信息:
ERROR at line 1:
ORA-06502: PL/SQL: numeric or value error
ORA-06512: at line 4
如果给变量赋予的值的小数位数超过了s的大小,不会报错,但会按s的值截掉多出的部分,如:
declare
id number(5,1);
begin
id:=1.232;
dbms_output.put_line(id);
end;
输出:1.2
7,DATE varchar2最大长度
保存定长的日期或时间数据,范围为公元前4712/01/01到公元9999/12/31。
每行固定为7字节长度,缺省值的日期描述(例如DD-MON-YY)由NLS_DATE_FORMAT参数设置。
注意to_date方法和to_char方法对日期类型的格式化
如:to_date(‘2007-04-11 23:45:18’ ,’yyyy-mm-dd hh24-mi-ss’ )
8,RAW (size)
保存变长的二进制数据。最大长度由size指定。
在表中每行的长度可变,最大长度为每行2000字节。
9,LONG RAW
保存变长的二进制数据。
在表中每行的长度可变,最大长度为每行231 - 1字节或2G。
10,BLOB
保存二进制数据,适合保持大文件(图片等)。
最大长度为232 - 1字节或4G。
11,CLOB
保存单字节字符数据,适合保持大文本。
最大长度为232 - 1字节或4G。
12,NCLOB
保存由字符集指定的单字节或固定宽度多字节或变宽多字节的字符数据。
最大长度为232 - 1字节或4G。
13, BFILE
保存在外部文件的二进制数据。
最大长度为232 - 1字节或4G。
二,成员名称说明
BFile Oracle BFILE 数据类型,它包含存储在外部文件中的最大为 4 GB 的二进制数据的引用。使用 OracleParameter.Value 中的 OracleClient OracleBFile 数据类型。
Blob 包含二进制数据的 Oracle BLOB 数据类型,其最大大小为 4 GB。使用 OracleParameter.Value 中的 OracleClient OracleLob 数据类型。
Byte 表示值在 0 和 255 之间的无符号 8 位整数的整数类型。这不是本机的 Oracle 数据类型,但是提供此类型以提高绑定输入参数时的性能。在 OracleParameter.Value 中使用 .NET Framework Byte 数据类型。
Char Oracle CHAR 数据类型,它包含最大为 2,000 字节的定长字符串。在 OracleParameter.Value 中使用 .NET Framework String 或 OracleClient OracleString 数据类型。
Clob 包含字符数据的 Oracle CLOB 数据类型,根据服务器的默认字符集,其最大大小为 4 GB。使用 OracleParameter.Value 中的 OracleClient OracleLob 数据类型。
Cursor Oracle REF CURSOR。OracleDataReader 对象不可用。
DateTime Oracle DATE 数据类型,它包含固定长度的日期和时间表示形式,范围从公元前 4712 年 1 月 1 日到公元 4712 年 12 月 31 日,默认格式为 dd-mmm-yy。对于公元日期,这会映射到 DateTime。要绑定公元前的日期,请分别对输入和输出参数使用 String 参数和 Oracle TO_DATE 或 TO_CHAR 转换函数。在 OracleParameter.Value 中使用 .NET Framework DateTime 或 OracleClient OracleDateTime 数据类型。
Double 一个双精度浮点值。这不是本机的 Oracle 数据类型,但是提供此类型以提高绑定输入参数时的性能。有关从 Oracle 数值转换到公共语言运行库数据类型的信息,请参见 OracleNumber。在 OracleParameter.Value 中使用 .NET Framework Double 或 OracleClient OracleNumber 数据类型。
Float 单精度浮点值。这不是本机的 Oracle 数据类型,但是提供此类型以提高绑定输入参
数时的性能。有关从 Oracle 数值转换到公共语言运行库数据类型的信息,请参见 OracleNumber。在 OracleParameter.Value 中使用 .NET Framework Single 或 OracleClient OracleNumber 数据类型。
LongRaw 包含变长二进制数据的 Oracle LONGRAW 数据类型,其最大大小为 2 GB。在 OracleParameter.Value 中使用 .NET Framework Byte[] 或 OracleClient OracleBinary 数据类型。
NChar Oracle NCHAR 数据类型,它包含要存储在数据库的区域字符集中的定长字符串,存储在数据库中时最大大小为 2,000 字节(不是字符)。Note: 值的大小依赖于数据库的区域字符集。有关更多信息,请参见 Oracle 文档。在 OracleParameter.Value 中使用 .NET Framework String 或 OracleClient OracleString 数据类型。
NClob Oracle NCLOB 数据类型,它包含要存储在数据库的区域字符集中的字符数据,存储在数据库中时最大大小为 4 GB(不是字符)。Note: 值的大小依赖于数据库的区域字符
集。有关更多信息,请参见 Oracle 文档。在 OracleParameter.Value 中使用 OracleLob 数据类型。
Number Oracle NUMBER 数据类型,它包含最大精度和小数位数为 38 的变长数值数据。该数据类型将映射到 Decimal。要绑定超出 Decimal.MaxValue 可包含的 Oracle NUMBER,请使用 OracleNumber 数据类型,或为输入参数和输出参数分别使用 String 参数和 Oracle TO_NUMBER 或 TO_CHAR 转换函数。在 OracleParameter.Value 中使用 .NET Framework Decimal 或 OracleClient OracleNumber 数据类型。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论