MySQL 如何在不使用PRIMARY KEY关键字的情况下定义MySQL表的列为主键?
正如我们所知道的,PRIMARY KEY列必须具有唯一值且不能为空值,因此如果我们定义一个具有UNIQUE和NOT NULL约束的列,那么该列将成为PRIMARY KEY列。
阅读更多:MySQL 教程
例如
在此示例中,我们通过为列“RollNo”定义UNIQUE和NOT NULL约束来创建了一个名为“Student123”的表。现在,通过描述表,我们可以看到“RollNo”是PRIMARY KEY列。
mysql> Create table Student123(RollNo INT UNIQUE NOT NULL, Name varchar(20));
查询成功,受影响行数为0(用时0.25秒)
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)