【发布时间】:2010-11-13 21:24:08
【问题描述】:
Oracle 是否有与 MySQL 的 TEXT 类型等效的列类型?
如果不是,通常如何存储较大的文本块? BLOB, varchar(32767)?如果重要的话,它是通过 PHP 访问的 Oracle 10。历史背景非常受欢迎。
【问题讨论】:
Oracle 是否有与 MySQL 的 TEXT 类型等效的列类型?
如果不是,通常如何存储较大的文本块? BLOB, varchar(32767)?如果重要的话,它是通过 PHP 访问的 Oracle 10。历史背景非常受欢迎。
【问题讨论】:
Oracle 有 BLOB、CLOB 和 NCLOB 用于存储二进制、字符和 unicode 字符数据类型。您还可以指定 LOB 存储区域,以便 DBA 在必要时微调存储(即将 LOB 数据放在单独的磁盘上)
此页面提供了更多信息: http://www.dba-oracle.com/t_blob.htm
我认为您可能想要 CLOB 数据类型。
【讨论】:
Oracle SQL 的 VARCHAR2 列限制为 4000 个字符(Oracle PL/SQL 的上限为 32,767 个字符)。正如其他人所说,CLOB 适合存储大量文本。
【讨论】:
字符大对象 (CLOB) 可能就是您要查找的内容。但是,如果您知道所有文本都适合 VARCHAR2,那么一定要把它放在那里。 clob 不能在 group by 子句中使用,并且在大多数情况下使用起来比 varchar2 慢得多。如果您知道您将超过 4000 字节限制,请使用 CLOB(最多可处理 4gb)。
【讨论】:
您需要使用CLOB。它代表字符大对象。
CLOB 用于存储基于 unicode 字符的数据,例如任何字符集中的大型文档。
它的值最长可达 2,147,483,647 个字符。
【讨论】: