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


11.1.3文字列型の概要

文字列デタ型のサマリにいて説明します。文字列型のプロパティーおよびストレージ要件の追加情報については、セクション11.4“文字列型”およびセクション11.7 "デ,タ型のストレ,ジ要件"を参照してください。

MySQLは,文字列カラムを创建表またはALTER TABLEステ,トメントで与えられている型とは異なる型に変更することがあります。セクション13.1.17.3“暗黙のカラム指定の変更”を参照してください。

MySQLは,文字カラム定義の長さ指定を文字単位で解釈します。これは,字符VARCHAR,および文本型に適応されます。

多くの文字列データ型のカラム定義には,カラムの文字セットまたは照合順序を指定する属性を含めることができます。これらの属性は字符VARCHAR文本型、枚举,およびデ,タ型に適用されます。

  • 字符集属性は文字セットを指定し,核对属性は文字セットの照合順序を指定します。例:

    创建表t (c1 VARCHAR(20) CHARACTER SET utf8, c2 TEXT CHARACTER SET latin1 COLLATE latin1_general_cs);

    このテ,ブル定義は,use utf8の文字セットとその文字セットのデフォルト照合順序を持c1という名前のカラムと,latin1の文字セットと大文字と小文字を区別する照合順序を持c2という名前のカラムを作成します。

    字符集属性または核对属性,あるいはその両方がない場合に,文字セットや照合順序を割り当てるためのル,ルは,セクション10.1.3.4 "カラム文字セットおよび照合順序"で説明しています。

    字符集字符集のシノニムです。

  • 文字デ,タ型に字符集二进制属性を指定すると,カラムは対応するバ。まり,字符二进制になり,VARCHARVARBINARYになり,文本になります。枚举およびデ,タ型では,これは行われず,宣言されたとおりに作成されます。この定義を使用して,テ,ブルを指定したとします。

    创建表t (c1 VARCHAR(10)字符集二进制,c2 TEXT字符集二进制,c3 ENUM('a','b','c')字符集二进制);

    結果のテ,ブルには,この定義が含まれています。

    CREATE TABLE t (c1 VARBINARY(10), c2 BLOB, c3 ENUM('a','b','c') CHARACTER SET binary);
  • 美国信息交换标准代码属性は字符集拉丁文1の短縮形です。

  • UNICODE属性は字符集ucs2の短縮形です。

  • 二进制属性は,カラム文字セットのバ。この場合,ソ,トと比較は数字の値に基づきます。

文字カラムのソ,トと比較は,カラムに割り当てられた文字セットに基づきます。字符VARCHAR文本枚举,およびデータ型では,辞書順ではなくベースとなる文字コード値をソートおよび比較で使用できるように,バイナリ照合順序または二进制属性を持カラムを宣言できます。

セクション10.1“文字セットのサポ,ト”では,MySQLの文字セットの使用に関する追加情報が記述されています。

  • (国家)CHAR (()][字符集charset_name][核对collation_name

    格納時に必ず,指定された長さになるように右側がスペ,スで埋められる固定長文字列です。はカラムの長さを文字数で表します。の範囲は0から255です。を省略すると,長さは1になります。

    注記

    PAD_CHAR_TO_FULL_LENGTHSQLモドが有効になっていないかぎり,字符値が取り出されるときに末尾のスペ,スは削除されます。

    字符字符の短縮形です。国家的字符(またはそれと同等の短縮形であるNCHAR)は,字符カラムが事前に定義された文字セットを使用する必要があることを定義する標準SQLの方法です。MySQL 4.1以降では,この事前に定義された文字セットとしてuse utf8を使用します。セクション10.1.3.6 "各国文字セット"を参照してください。

    字符的字节デ,タ型は二进制デタ型のエリアスです。これは互換性機能です。

    MySQLでは,CHAR (0)の型のカラムを作成できます。これは主に,カラムの存在に依存するが,実際にはその値を使用しない古いアプリケーションに準拠する必要があるときに役立ちます。CHAR (0)は,2の値しか取れないカラムが必要な場合にも非常に便利です。CHAR(0)为空として定義されたカラムは1ビットだけを占め,(空の文字列)値だけを取ることができます。

  • (国家)VARCHAR ()[字符集charset_name][核对collation_name

    可変長文字列です。はカラムの最大長を文字数で表します。の範囲は0から65 535です。VARCHARの有効な最大長は,最大行サイズ(65535バイト,すべてのカラムで共有されます)と使用される文字セットによって決まります。たとえば,use utf8の文字は1文字にき最大3バトを必要とする場合があるため,use utf8の文字セットを使用するVARCHARカラムは,最大21844文字になるように宣言できます。セクションd.10.4“テブルカラム数と行サズの制限”を参照してください。

    MySQLは,VARCHAR値を1バ▪▪トまたは2バ▪▪▪ト長のプリフィクスが付いたデ▪▪タとして格納します。長さプリフィクスは,値に含まれるバ。VARCHARカラムは,格納できる値が255バイト以下の場合は1バイト長のプリフィクスを使用し,255バイトより大きい場合は2バイト長のプリフィクスを使用します。

    注記

    MySQL 5.6は,標準SQL仕様に従い,VARCHAR値から末尾のスペ,スを削除しません

    VARCHAR性格不同の短縮形です。国家VARCHARは,VARCHARカラムが事前定義された文字セットを使用する必要があることを定義するための標準SQLの方法です。MySQL 4.1以降では,この事前に定義された文字セットとしてuse utf8を使用します。セクション10.1.3.6 "各国文字セット"を参照してください。NVARCHAR国家VARCHARの短縮形です。

  • 二进制(

    二进制型は字符型と似ていますが,非バ▪▪▪ナリ文字列ではなく,バ▪▪▪ナリバ▪▪ト文字列を格納します。はカラムの長さをバ@ @ト数で表します。

  • VARBINARY (

    VARBINARY型はVARCHAR型と似ていますが,非バ▪▪▪ナリ文字列ではなく,バ▪▪▪ナリバ▪▪ト文字列を格納します。はカラムの最大の長さをバ@ @ト数で表します。

  • TINYBLOB

    最大長が255 (2)8−1)バトのカラム。各TINYBLOB値は,値のバ▪▪ト数を示す1バ▪▪ト長のプリフィクスを使用して格納されます。

  • Tinytext[字符集charset_name][核对collation_name

    最大長が255 (2)8−1)文字の文本カラム。値にマルチバesc escト文字が含まれる場合,有効な最大長は少なくなります。各非常小的文本串値は,値のバ▪▪ト数を示す1バ▪▪ト長のプリフィクスを使用して格納されます。

  • BLOB (()]

    最大長が65,535 (216−1)バトのカラム。各値は,値のバ▪▪ト数を示す2バ▪▪ト長のプリフィクスを使用して格納されます。

    この型には,オプションの長さを指定できます。これが行われた場合,MySQLはバ@ @トの長さの値を保持するのに十分な最小の型としてカラムを作成します。

  • 文本(()][字符集charset_name][核对collation_name

    最大長が65,535 (216−1)文字の文本カラム。値にマルチバesc escト文字が含まれる場合,有効な最大長は少なくなります。各文本値は,値のバ▪▪ト数を示す2バ▪▪ト長のプリフィクスを使用して格納されます。

    この型には,オプションの長さを指定できます。これが行われた場合,MySQLは文字の長さの値を保持するのに十分な最小文本型としてカラムを作成します。

  • MEDIUMBLOB

    最大長が16,777,215 (224−1)バトのカラム。各MEDIUMBLOB値は,値のバ▪▪ト数を示す3バ▪▪ト長のプリフィクスを使用して格納されます。

  • Mediumtext[字符集charset_name][核对collation_name

    最大長が16,777,215 (224−1)文字の文本カラム。値にマルチバesc escト文字が含まれる場合,有効な最大長は少なくなります。各简单値は,値のバ▪▪ト数を示す3バ▪▪ト長のプリフィクスを使用して格納されます。

  • LONGBLOB

    最大長が4294967295または4gバaaplト(232−1)バトのカラム。LONGBLOBカラムの有効な最大長は,クライアント/サーバープロトコルと使用可能なメモリー内の構成済み最大パケットサイズにより決まります。各LONGBLOB値は,値のバaapl .ト数を示す4バaapl .ト長のプリフィクスを使用して格納されます。

  • 长文本[字符集charset_name][核对collation_name

    最大長が4294967295または4gバaaplト(232−1)文字の文本カラム。値にマルチバesc escト文字が含まれる場合,有効な最大長は少なくなります。量变カラムの有効な最大長もまた,クライアント/サーバープロトコルと使用可能メモリー内の構成済みの最大パケットサイズにより決まります。各量变値は,値のバaapl .ト数を示す4バaapl .ト長のプリフィクスを使用して格納されます。

  • 枚举('value1”、“value2',…)[字符集charset_name][核对collation_name

    列挙です。value1value2...の値,,または特殊なエラ値のリストから選択された値を1だけを持ことができる文字列オブジェクトです。枚举値は,内部では整数として表されます。

    枚举カラムには,最大65,535個の個別の要素を含めることができます。(実用的な限度は3000個までです.)テ,ブルには,グル,プと見なされる枚举およびカラムの中の一意の要素リスト定義を,255個以下を含めることができます。これらの制限の詳細は,セクションD.10.5 " .frmファル構造により課せられる制限"を参照してください。

  • 设置(“value1”、“value2',…)[字符集charset_name][核对collation_name

    セットです。ゼロ個以上の値を持ことができる文字列オブジェクトであり,そのそれぞれの値は,value1value2...値のリストから選択する必要があります。値は整数として内部で表されます。

    カラムには最大64個の個別のメンバ,を含めることができます。テ,ブルには,グル,プと見なされる枚举およびカラムの中の一意の要素リスト定義を,255個以下を含めることができます。この制限の詳細は,セクションD.10.5 " .frmファル構造により課せられる制限"を参照してください。