web-dev-qa-db-ja.com

MySQLのTEXTタイプに相当するOracle

Oracleには、MySQLのTEXTタイプと同等の列タイプがありますか?

そうでない場合、通常、テキストの大きな塊はどのように保存されますか? BLOBvarchar(32767)?重要な場合は、PHP経由でアクセスされているのはOracle10です。歴史的背景は大歓迎です。

17
Alan Storm

Oracleには、バイナリ、文字、およびユニコード文字のデータ型を格納するためのBLOB、CLOB、およびNCLOBがあります。必要に応じてDBAがストレージを微調整できるようにするLOBストレージ領域を指定することもできます(つまり、LOBデータを別々のディスクに配置します)

このページにはもう少し情報があります: http://www.dba-Oracle.com/t_blob.htm

14
MarcE

おそらく [〜#〜] clob [〜#〜] データ型が必要だと思います。

7
DCookie

Oracle SQLには、VARCHAR2列の4000文字の制限があります(Oracle PL/SQLには32,767文字の上限があります)。他の人が述べているように、CLOBは大量のテキストを格納するのに適しています。

2
Jeffrey Kemp

文字ラージオブジェクト(CLOB)は、おそらくあなたが探しているものです。ただし、すべてのテキストがVARCHAR2に収まることがわかっている場合は、必ずそこに配置してください。 clobはgroupby句では使用できず、ほとんどの場合、varchar2よりも使用に時間がかかります。 4000バイトの制限を超えることがわかっている場合は、CLOB(最大4GBを処理できます)を使用します。

2
jle

CLOBを使用する必要があります。 Character Large Objectの略です。

CLOBは、任意の文字セットの大きなドキュメントなど、Unicode文字ベースのデータを格納するために使用されます。

値は最大2,147,483,647文字の長さにすることができます。

2
Dulith De Costa