MySQL 中的 int 和 integer 有什么区别?
mysqlmysqli database
在 MySQL 5.0 中,int 是 integer 的同义词。以下是演示,显示 int 和 integer 内部都表示 int(11)。
创建具有 int 数据类型的表
mysql> create table IntDemo -> ( -> Id int -> ); Query OK, 0 rows affected (1.04 sec)
Here is description of the table。查询如下
mysql> desc IntDemo;
以下是输出 −
+-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | Id | int(11) | YES | | NULL | | +-------+---------+------+-----+---------+-------+ 1 row in set (0.06 sec)
查看列类型,它是 int(11)。现在它存储的范围与为整数定义的范围相同。插入记录的查询如下
mysql> insert into IntDemo values(2147483647); Query OK, 1 row affected (0.20 sec) mysql> insert into IntDemo values(-2147483648); Query OK, 1 row affected (0.42 sec)
使用 select 语句显示表中的所有记录。查询如下
mysql> select *from IntDemo;
以下是输出 −
+-------------+ | Id | +-------------+ | 2147483647 | | -2147483648 | +-------------+ 2 rows in set (0.00 sec)
创建一个数据类型为整数的表。
创建表的查询如下
mysql> create table IntegerDemo -> ( -> Id integer -> ); Query OK, 0 rows affected (0.93 sec)
使用 DESC 命令检查表的描述。
mysql> desc IntegerDemo;
以下是输出 −
+-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | Id | int(11) | YES | | NULL | | +-------+---------+------+-----+---------+-------+ 1 row in set (0.00 sec)
使用insert命令在表中插入记录,整数取值范围与int相同。查询如下
mysql> insert into IntegerDemo values(2147483647); Query OK, 1 row affected (0.11 sec) mysql> insert into IntegerDemo values(-2147483648); Query OK, 1 row affected (0.27 sec)
使用 select 语句显示表中的所有记录。查询如下
mysql> select *from IntegerDemo;
以下是输出 −
+-------------+ | Id | +-------------+ | 2147483647 | | -2147483648 | +-------------+ 2 rows in set (0.00 sec)