oracle中一个表上是否可以有多个LOB列

oracle中一个表上是否可以有多个LOB列,第1张

Oracle 8i以后的版本:

一个表只能有一个LONG ,或 LONG RAW列,但可以有多个LOB列(BLOB,CLOB)。

VARCHAR2数据类型

支持可变长度的字符串,也可以存储字母数字值。该数据类型的大小在1至4000个字节范围内。

LONG数据类型

此数据类型用来存储可变长度字符数据,最多能存储2GB。LONG数据类型用来存储VARCHAR2数据类型不能存储的长文本信息。其长度受到计算机上可用存储空间的限制。

在表中的某列上设置LONG数据类型时,需要遵循以下限制。

l 一个表中只有一个列可以为LONG数据类型。

l LONG列不能定义为唯一约束或主键约束。

l LONG列上不能建立索引。

l 过程或存储过程不能接受LONG数据类型的参数。

LONG RAW数据类型

LONG RAW数据类型用于存储可变长度的二进制数据,最多能存储2GB。该数据类型不能索引。此外,LONG数据类型受到的所有限制对LONG RAW数据类型也同样有效。

LOB数据类型

LOB又称为“大对象”数据类型。该数据类型可以存储多大4GB的非结构化信息,如声音剪辑和视频剪辑等。它们允许对数据进行高效、随机、分段的访问。LOB可以是外部的,也可以是内部的,这取决于它们相对于数据库的位置。

Oracle中的LOB数据类型有CLOB、BLOB和BFILE。

? CLOB

CLOB代表Character LOB(字符LOB),它能够存储大量字符数据。该数据类型可以存储单字节字符数据和多字节字符数据。CLOB可用于存储非结构化的XML文档。

? BLOB

BLOB代表Binary LOB(二进制LOB),它可以存储较大的二进制对象,如图形、视频剪辑和声音剪辑等。

? BFILE

BFILE代表Binary File(二进制文件),它能够将二进制文件存储在数据库外部的 *** 作系统文件中。BFILE列存储一个BFILE定位器,它指向位于服务器文件系统上的二进制文件。支持的文件最大为4GB。

Oracle中的表可以有多个LOB列,每个LOB列可以是不同的LOB类型。

A.CLOB 是内置类型,它将字符大对象 (Character Large Object) 存储为数据库表某一行中的一个列值。

B.BLOB常常是数据库中用来存储二进制文件的字段类型。

C.CFile是MFC文件类的基类,它直接提供非缓冲的二进制磁盘输入/输出设备,并直接地通过派生类支持文本文件和内存文件。

D.BFILE:DB外部的二进制文件,它们分为两类:内部LOB:存放在DB内部,包括BLOB,CLOB,BCLOB;外部文件:存放在DB外面,就是BFILE 。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9478998.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存