2015-12-28 11 views
6

データ型がありますが、Postgresのドキュメントはそれのためにここにいるbyteaデータ型byteaとは何ですか、いつ使用しますか? Postgresので

と呼ば:http://www.postgresql.org/docs/9.0/static/datatype-binary.html

私が今までにこれを使用するとき、私は理解できない - も私は本当にこのデータ型の目的を理解することができます。

私はこの言葉を何度も見つけ、自分自身に疑問を抱くようになりました。「私がこれを理解することを期待しているように思えるかもしれません。

誰かが簡単な定義を与えることができ、それを使用する可能性がある状況がある場合は、それは非常に役立ちます。

ありがとうございました。

答えて

7

私はドキュメントがはbyteaとテキストの違いについて合理的に明らかであると思う:

バイナリ文字列には2つの方法で文字列と区別されます。第1に、バイナリ文字列は、特に、値0のオクテットと他の「印刷不可能な」オクテット(通常、32〜126の範囲外のオクテット)を格納することを可能にします。文字列はゼロオクテットを許可しません。また、データベースの選択された文字セットのエンコーディングに従って無効なオクテット値およびオクテット値のシーケンスを禁止します。第2に、バイナリ文字列に対する操作は実際のバイトを処理しますが、文字列の処理はロケール設定に依存します。要するに、バイナリ文字列は、プログラマが「生のバイト」と考えるデータを格納するのに適していますが、文字列はテキストを格納するのに適しています。それは内容が「テキスト」(あなたは、サーバーの構成に適用したロケールとinternationalizations設定の対象とあなたがしているれているOSであるかどうかに関係しています

http://www.postgresql.org/docs/9.0/static/datatype-binary.html

... "オクテット"(8ビットバイナリ値のシーケンス---一般的に "バイト"と呼ばれます)の配列に対して実行します。

(「バイト」という用語と「オクテット」という用語の間には技術的な違いがあります。歴史的に、一部のプラットフォームとコンピューティングデバイスではパリティビットとストップビットの両方で「バイト」が使用され、常に正確に8ビットを意味する;ネットワークプロトコルの仕様とドキュメントを明確にするために導入された用語)。

関連する問題