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

On specifying a CHARACTER SET binary attribute for a character string data type, MySQL creates that column as its subsequent binary string type. The conversions for CHAR, VARCHAR and BLOB data types take place as follows −

  • CHAR would become BINARY
  • VARCHAR would become VARBINARY
  • TEXT would become BLOB

The above kind of conversion does not occur for ENUM and SET data type and they both are created as declared while creating the table.

Example

In the example below we have created a table named ‘EMP’ with four columns all specified as CHARACTER SET binary as follows −

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)
登录后复造

But now on checking the status of table, with the help of query below, we can see that MySQL has changed the data type according to its subsequent binary string.

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 怎么应声?的具体形式,更多请存眷萤水红IT仄台其余相闭文章!

点赞(45) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部