ホームページ > データベース > mysql チュートリアル > 文字列データ型に CHARACTER SET バイナリ属性を指定すると、MySQL はどのように反応しますか?

文字列データ型に CHARACTER SET バイナリ属性を指定すると、MySQL はどのように反応しますか?

王林
リリース: 2023-09-09 13:57:02
転載
1093 人が閲覧しました

当我们为字符串数据类型指定 CHARACTER SET 二进制属性时,MySQL 如何反应?

文字列データ型に CHARACTER SET バイナリ属性を指定すると、MySQL はそのカラムを後続のバイナリ文字列型として作成します。 CHAR、VARCHAR、および BLOB データ型の変換は次のように行われます。 -

  • CHAR は BINARY
  • VARCHAR は VARBINARY
  • TEXT は BLOB## になります
#上記の種類の変換は、ENUM および SET データ型では発生せず、どちらもテーブルの作成時に宣言どおりに作成されます。

以下の例では、次のように CHARACTER SET バイナリとして指定された 4 つのカラムを持つ「EMP」という名前のテーブルを作成しました。-

mysql> Create table Emp(Name varchar(10) CHARACTER SET binary, Address CHAR(10)CHARACTER SET binary, Designation TEXT CHARACTER SET binary, Field ENUM('ENG','SS') CHARACTER SET binary);
Query OK, 0 rows affected (0.16 sec)
ログイン後にコピー

しかし、以下のクエリを使用してテーブルのステータスを確認すると、MySQL が後続のバイナリ文字列に従ってデータ型を変更しました。

mysql> Show Create Table EMP\G
*************************** 1. row ***************************
      Table: EMP
Create Table: CREATE TABLE `emp` (
   `Name` varbinary(10) DEFAULT NULL,
   `Address` binary(10) DEFAULT NULL,
   `Designation` blob,
   `Field` enum('ENG','SS') CHARACTER SET binary DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
ログイン後にコピー

以上が文字列データ型に CHARACTER SET バイナリ属性を指定すると、MySQL はどのように反応しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート