2009-02-21 14 views
5

私の一族のウェブサイトのための小さなフォーラムを作っています。スレッドテキストをTEXTまたはBLOBに保存する必要があるのだろうか?違いはなんですか?私はphpBBがそうしているのを見ました。BLOBにテキストを格納しますか?

とにかくBLOBとは何ですか? Google上でそれについて多くを見つけることができません。

答えて

1

BLOBはバイナリデータ用です。私はphpBB 3がバイナリですべてを保存する理由を知らないが、私はそれを自分で気づいた。私の推測では、彼らがデータベースに入れたものを圧縮/符号化しているということです。あなたはそれを説明するコメントがあるかどうかを見るためにphpBBのソースコードを調べてみることができます。

+1

ああ、その検索機能が悪い理由かもしれません。 – Gumbo

6

blobは単なる束です。任意のバイト数、それ以上はありません。

あなたはブロブとしてテキストを格納した場合、あなたはエンコーディング(バイトまでのテキストを翻訳するプロセス)を心配する必要があると思います。しかし、データベースに格納されているテキストをデータベースに保存しておけば、データベースに格納されたテキストが効率的に格納され、簡単に使用できるように適切にエンコードされデコードされます。

テキストを保存するために計画している場合は、テキストを格納する必要があります。

phpBBのは、テキストエンコーディングを実装し、自分自身をデコードし、それは、テキストの代わりにブロブを使用する理由の1つかもしれない可能性があります。それは起こりそうもないかもしれませんが、テキストデータ型の長さが最大になることもあります。この特定のインスタンスでは、blobはphpBBの回避策になるかもしれません。 「何を」再

4

からBLOBは、バイナリラージオブジェクトです。文字サイズの大きなオブジェクトであるCLOBと比較してください。 CLOBのために、たとえば、SQL Server上で使用すると、BLOBのためにimage/varbinary(max)を持っている、とtext/varchar(max) - 異なるデータベースは、しかし、別のものにそれらを呼び出します。

システムだけBLOBをサポートしている場合は、1つのオプションは、文字列を符号化することである - UTF8を使用して、たとえば。これは起こっている可能性があります。

関連する問題