这篇文章给大家介绍了“详解有哪些的字段类型,含义分别是什么”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“详解有哪些的字段类型,含义分别是什么”有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。
的字段类型:1、CHAR,固定长度的字符串;2、,可变长度的字符串;3、LONG,超长的字符串;4、BLOB,二进制数据;5、FLOAT,浮点型数据;6、REAL,实数类型;7、DATE,日期类型的数据等等。
本教程操作环境:系统、 11g版、Dell G3电脑。
的字段类型有哪些字 段 类 型下面为某些标记的详细记录。
数据类型 参数 描述
char(n) n=1 to 2000字节 定长字符串,n字节长,如果不指定长度,缺省为1个字节长(一个汉字为2字节)
(n) n=1 to 4000字节 可变长的字符串,具体定义时指明最大长度n,
这种数据类型可以放数字、字母以及ASCII码字符集(或者等数据库系统接受的字符集标准)中的所有符号。
如果数据长度没有达到最大值n, 8i会根据数据大小自动调节字段长度,
如果你的数据前后有空格, 8i会自动将其删去。是最常用的数据类型。
可做索引最大长度3209。
(m,n) m=1 to 38
n=-84 to 127 可变长的数值列,允许0、正值及负值,m是所有有效数字的位数,n是小数点以后的位数。
如:(5,2),则这个字段的最大值是99,999,如果数值超出了位数限制就会被截取多余的位数。
如:(3,0),输入575.316,真正保存的数据是575。
date 无 从公元前4712年1月1日到公元4712年12月31日的所有合法日期,
8i其实在内部是按7个字节来保存日期数据,在定义中还包括小时、分、秒。
缺省格式为DD-MON-YY,如07-11月-00 表示2000年11月7日。
long 无 可变长字符列,最大长度限制是2GB,用于不需要作字符串搜索的长串数据,如果要进行字符搜索就要用类型。
long是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
raw(n) n=1 to 2000 可变长二进制数据,在具体定义字段的时候必须指明最大长度n, 8i用这种格式来保存较小的图形文件或带格式的文本文件,如 Word文档。
raw是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
long raw 无 可变长二进制数据,最大长度是2GB。 8i用这种格式来保存较大的图形文件或带格式的文本文件,如 Word文档,以及音频、视频等非文本文件。
在同一张表中不能同时有long类型和long raw类型,long raw也是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
blob,clob,nclob 无 三种大型对象(LOB),用来保存较大的图形文件或带格式的文本文件,如 Word文档,以及音频、视频等非文本文件,最大长度是4GB。
LOB有几种类型,取决于你使用的字节的类型, 8i实实在在地将这些数据存储在数据库内部保存。
可以执行读取、存储、写入等特殊操作。
bfile 无 在数据库外部保存的大型二进制对象文件,最大长度是4GB。
这种外部的LOB类型,通过数据库记录变化情况,但是数据的具体保存是在数据库外部进行的。
8i可以读取、查询BFILE,但是不能写入。
大小由操作系统决定。
数据类型是列或存储过程中的一个属性。
支持的数据类型可以分为三个基本种类:字符数据类型、数字数据类型以及表示其它数据的数据类型。
字符数据类型
CHAR char数据类型存储固定长度的字符值。一个CHAR数据类型可以包括1到2000个字符。如果对CHAR没有明确地说明长度,它的默认长度则设置为1。如果对某个CHAR类型变量赋值,其长度小于规定的长度,那么自动用空格填充。
存储可长度的字符串。虽然也必须指定一个数据变量的长度,但是这个长度是指对该变量赋值的最大长度而非实际赋值长度。不需用空格填充。最多可设置为4000个字符。因为数据类型只存储为该列所赋的字符(不加空格),所以需要的存储空间比CHAR数据类型要小。
推荐使用
NCHAR和 NCHAR和数据类型分别存储固定长度与可变长度的字符串,但是它们使用的是和数据库其他类型不同的字符集。在创建数据库时,需要指定所使用的字符集,以便对数据中数据进行编码。还可以指定一个辅助的字符集[即本地语言集]。NCHAR和类型的列使用辅助字符集。NCHAR和类型的列使用辅助字符集。
在 9i中,可以以字符而不是字节为单位表示NCHAR和列的长度。
LONG long数据类型可以存放2GB的字符数据,它是从早期版本中继承下来的。现在如果存储大容量的数据,推荐使用CLOB和NCLOB数据类型。在表和sql语句中使用LONG类型有许多限制。
CLOB和NCLOB CLOB和NCLOB数据类型可以存储多达4GB的字符数据。NCLOB数据类型可存储NLS数据。
数字数据类型
使用标准、可变长度的内部格式来存储数字。这个内部格式精度可以高达38位。
数据类型可以有两个限定符,如: (,scale)。表示数字中的有效位。如果没有指定的话,将使用38作为精度。scale表示小数点右边的位数,scale默认设置为0。如果把scale设成负数,将把该数字取舍到小数点左边的指定位数。
日期数据类型
标准日期格式为:DD-MON-YY HH:MI:SS
通过修改实例的参数,可以改变实例中插入日期的格式。在一个会话期间,可以通过Alter sql命令来修改日期,或者通过使用sql语句的表达式中的参数来更新一个特定值。
其它的数据类型
RAW和LONG RAW RAW和LONG RAW数据类型主要用于对数据库进行解释。指定这两种类型时,以位的形式来存储数据。RAW数据类型一般用于存储有特定格式的对象,如位图。RAW数据类型可占用2KB的空间,而LONG RAW数据类型则可以占用2GB大小。
ROWID ROWID是一种特殊的列类型,称之为伪列()。ROWID伪列在sql 语句中可以像普通列那样被访问。数据库中每行都有一个伪列。ROWID表示行的地址,ROWID伪列用ROWID数据类型定义。
ROWID与磁盘驱动的特定位置有关,因此,ROWID是获得行的最快方法。但是,行的ROWID会随着卸载和重载数据库而发生变化,因此建议不要在事务中使用ROWID伪列的值。例如,一旦当前应用已经使用完记录,就没有理由保存行的ROWID。不能通过任何sql语句来设置标准的ROWID伪列的值。
列或变量可以定义成ROWID数据类型,但是不能保证该列或变量的值是一个有效的ROWID。
LOB(大型对象)数据类型,可以保存4GB的信息。LOB有以下3中类型:
,只能存储字符数据
,保存本地语言字符集数据
,以二进制信息保存数据
可以指定将一个LOB数据保存在数据库内,还是指向一个包含次数据的外部文件。
LOB可以参与事务。管理LOB中的数据必须通过 PL/sql内置软件包或者OGI接口。
为了便于将LONG数据类型转换成LOB, 9i包含许多同时支持LOB和LONG的函数,喊包括一个ALTER TABLE语句的新选择,它允许将LONG数据类型自动转换成LOB。
BFILE
BFILE数据类型用做指向存储在数据库以外的文件的指针。
XML Type
作为对XML支持的一部分, 9i包含了一个新的数据类型XML Type。定义为的列将存储一个字符LOB列中的XML文档。有许多内置的功能可以使你从文档中抽取单个节点,还可以在XML Type文档中对任何节点创建索引。
从 8以后,用户可以定义自己的复杂数据类型,它们由基本数据类型组合而成。
、和
包括3个新的数据类型,用于定义在现有数据类型之外的数据结构。其中每种数据类型必须用程序单元来定义,以便让知道如何处理这些类型的特定实现。
类型转换
会自动将某些数据类型转换成其他的数据类型,转换取决于包括该值的sql语句。
数据转换还可以通过的类型转换函数显示地进行。
连接与比较
在大多数平台上 sql中的连接操作符用两条竖线(||)表示。连接是将两个字符值连接。的自动类型转换功能使得两个数字值也可以进行连接。
NULL
NULL值是关系数据库的重要特征之一。实际上,NULL不代表任何值,它表示没有值。如果要创建表的一个列,而这个列必须有值,那么应将它指定为NOT NULL,这表示该列不能包含NULL值。
任何数据类型都可以赋予NULL值。NULL值引入了sql运算的三态逻辑。如果比较的一方是NULL值,那么会出现3种状态:TURE、FALSE以及两者都不是。
因为NULL值不等于0或其他任何值,所以测试某个数据是否为NULL值只能通过关系运算符IS NULL来进行。
NULL值特别适合以下情况:当一个列还未赋值时。如果选择不使用NULL值,那么必须对行的所有列都要赋值。这实际上也取消了某列不需要值的可能性,同时对它赋的值也很容易产生误解。这种情况则可能误导终端用户,并且导致累计操作的错误结果。
以上就是关于“详解有哪些的字段类型,含义分别是什么”的相关知识,感谢各位的阅读,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注群英网络,小编每天都会为大家更新不同的知识。