如何定义一个 MySQL 表的主键列而不使用 PRIMARY KEY 关键字?


我们知道,一个 PRIMARY KEY 列必须有唯一的键值并且不能为空,因此,如果我们定义一个具有 UNIQUE 和 NOT NULL 约束的列,那么该列将成为 PRIMARY KEY 列。

示例

在此示例中,我们通过使用 UNIQUE 和 NOT NULL 约束定义列“RollNo”创建了一个名为“Student123”的表。现在,通过描述表,我们可以看到“RollNo”是 PRIMARY KEY 列。

mysql> Create table Student123(RollNo INT UNIQUE NOT NULL, Name varchar(20));
Query OK, 0 rows affected (0.25 sec)

mysql> DESCRIBE Student123;

+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| RollNo | int(11)     | NO   | PRI | NULL    |       |
| Name   | varchar(20) | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+

2 rows in set (0.04 sec)

更新于: 19-6-2020

223 次浏览

开启你的 职业生涯

完成课程以获得认证

入门
广告