Oracle中的超长字符串存储CLOB

varchar:
标准SQL中的可变长字符串类型,在标准SQL中允许存放空的字符串,但是在oracle中对其做出了一些改动,即:如果存放的是空字符串,则将其判断为null。另外被oracle保留在以后可能会对其做出改变。

varchar2:
目前为止与varchar相同,可变长的字符串类型,但oracle官方承诺varchar在将来可能会被改变,但varchar2肯定不会改变,因此推荐使用varchar2。

long:
大字段类型之一,此类型中存放的是可变长的字符串,专门用于存放超过4000字节的超长字符串,最大上限为2GB。但是,这个类型是被oracle保留下来并且将来会被取消掉的数据类型,替代它的是同为大字段类型的LOB(Large Object)类型。

LOB:
LOB(Large Object) 数据类型即能存储结构化数据外,也能存储非结构化数据,最大长度为4GB,比long和long raw更加灵活,Oracle公司建议,对大对象的操作尽量使用LOB

SQL 类型 CLOB 在 JavaTM 编程语言中的映射关系。SQL CLOB 是内置类型,它将 Character Large Object 存储为数据库表的某一行中的一个列值。默认情况下,驱动程序使用 SQL locator(CLOB) 实现 Clob 对象,这意味着 CLOB 对象包含一个指向 SQL CLOB 数据而不是数据本身的逻辑指针。Clob 对象在它被创建的事务处理期间有效。

CLOB 接口提供某些方法来获得 SQL CLOB (Character Large Object) 值长度、在客户端实现 CLOB 值以及搜索子字符串或 CLOB 值中的 CLOB 对象。接口 ResultSetCallableStatementPreparedStatement 中的方法(如 getClobsetClob)允许编程人员访问 SQL CLOB 值。此外,此接口还拥有更新 CLOB 值的方法。



Oracle中,Varchar2支持的最大字节数为4KB,所以对于某些长字符串的处理,我们需要用CLOB类型的字段,CLOB字段最大支持4GB。
还有其他几种类型:
blob:二进制,如果exe,zip
clob:单字节码,比如一般的文本文件.
nlob:多字节码,如UTF格式的文件.

LOB:
Large Object的简写,是专门用于处理大对象的数据类型,一个表中可以有多个LOB字段,每个字段可以存储达4GB的数据,LOB主要分为以下两类:
1、BLOB(Binary Large Object):适合于存放程序、图片、影音等非结构化文件。
2、CLOB(Character Large Object):适用于存储文本型数据,例如文章、新闻、记录、日志等。


你可能感兴趣的:(oracle,编程语言,object)