10bet网址
MySQL 5.6リファレンスマニュアル
本手册下载
PDF (Ltr)- 26.8 mb
PDF (A4)- 26.8 mb


11.4.2 binaryおよびvarbinary型

二进制およびVARBINARY型は,字符およびVARCHAR型に似ていますが,非バ,ナリ文字列ではなく,バ,ナリ文字列を格納します。。これは,それらに文字セットがなく,ソートおよび比較は値の中のバイトの数値に基づいていることを意味します。

二进制およびVARBINARYで許可される最大長は,字符およびVARCHARの場合と同じですが,二进制およびVARBINARYの長さが文字数ではなくバ邮箱ト数で表される点が異なります。

二进制およびVARBINARYデタ型は字符的二进制およびVARCHAR二进制デタ型とは異なります。後者の型は,二进制属性によってカラムがバ邮箱ナリ文字列カラムとして扱われることはありません。その代わり,これによってカラムの文字セットのバイナリ照合順序が使用され,カラム自体にはバイナリバイト文字列ではなく非バイナリ文字列が格納されます。たとえば,CHAR(5)二进制は,デフォルト文字セットがlatin1とすれば,CHAR(5)字符集latin1 COLLATE latin1_binとして扱われます。これは,文字セットや照合順序を持たない5バe .トのバe .ナリ文字列を格納する二(5)とは異なります。非バereplicationナリ文字列のバereplicationナリ照合順序とバereplicationナリ文字列の違いにereplicationいては,セクション10.1.7.6 " _binおよびbinary照合順序"を参照してください。

厳密なSQLモドが有効でない場合に二进制またはVARBINARYカラムにその最大長を超える値を割り当てると,その値はカラムの最大長に合わせて切り捨てられ,警告メッセージが表示されます。値を切り捨てる場合,厳密なSQLモードを使用することで,警告ではなくエラーを発生させて,その値の挿入を抑制できます。セクション5.1.7 "サバSQLモド"を参照してください。

二进制値は格納されると,特定の長さまで右側がパッド値で埋められます。パッド値は0 x00(ゼロバ和ト)です。値は挿入時には右側が0 x00で埋められ、選択時に後続のバ以及トは削除されません。すべてのバトは,命令および截然不同的操作を含め比較で意味があります。0 x00バ邮箱トとスペ邮箱スは比較では異なり,0 x00<スペスです。

例:二(3)カラムの場合,“一个”は挿入時に' \ 0になります。' \ 0は挿入時に“\ \ 0”になります。選択時,挿入された両方の値は変更されません。

VARBINARYでは,挿入時にパディングされることも,選択時にバ,トが削除されることもありません。すべてのバトは,命令および截然不同的操作を含め比較で意味があります。0 x00バ邮箱トとスペ邮箱スは比較では異なり,0 x00<スペスです。

後続のパッドバイトが取り除かれたり,比較で無視されたりする場合では,一意の値を必要とするインデックスがカラムに含まれていれば,後続のパッドバイトの個数だけが異なるカラム値への挿入は,重複キーエラーになります。たとえば,テブルに“一个”が含まれている場合,' \ 0を格納しようとすると,重複キエラが発生します。

バ邮箱ナリデ邮箱タの格納に二进制データ型を使用する予定であり,取り出した値を格納した値とまったく同じにする必要がある場合は,先行のパディングと削除文字を考慮する必要があります。次の例は,二进制値の0 x00パディングによって,カラム値の比較がどのような影響を受けるかにいて示しています。

CREATE TABLE t (c BINARY(3));查询OK, 0行影响(0.01秒)mysql> INSERT INTO t SET c = 'a';查询OK, 1 row affected (0.01 sec) mysql> SELECT HEX(c), c = 'a', c = 'a\0\0' from t;+--------+---------+-------------+ | 十六进制(c) | c = c a | = ' \ 0 \ 0 ' | +--------+---------+-------------+ | 610000 | 0 | 1  | +--------+---------+-------------+ 1行集(0.09秒)

取り出される値を,パディングなしのストレ,ジに指定した値と同じにする必要がある場合は,代わりにVARBINARYか,いずれかのデタ型を使用することをお勧めします。


本手册下载
PDF (Ltr)- 26.8 mb
PDF (A4)- 26.8 mb