MySQL中int和integer有什么区别?

int是MySQL 5.0中integer的同义词。这是演示显示,int和integer内部表示int(11)。

创建具有int数据类型的表

mysql> create table IntDemo
   -> (
   -> Id int
   -> );

这是表格的说明。查询如下

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);

mysql> insert into IntDemo values(-2147483648);

使用select语句显示表中的所有记录。查询如下

mysql> select *from IntDemo;

以下是输出

+-------------+
| Id          |
+-------------+
| 2147483647  |
| -2147483648 |
+-------------+
2 rows in set (0.00 sec)

创建一个数据类型为整数的表。

创建表的查询如下

mysql> create table IntegerDemo
   -> (
   -> Id integer
   -> );

使用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);

mysql> insert into IntegerDemo values(-2147483648);

使用select语句显示表中的所有记录。查询如下

mysql> select *from IntegerDemo;

以下是输出

+-------------+
| Id          |
+-------------+
| 2147483647  |
| -2147483648 |
+-------------+
2 rows in set (0.00 sec)