安汇情感
您的当前位置:首页phpmyadmin主键能重复么

phpmyadmin主键能重复么

来源:安汇情感


phpmyadmin主键能重复么

主键(PRIMARY KEY)的完整称呼是“主键约束”。MySQL 主键约束是一个列或者列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键,通过它可以强制表的实体完整性。

主键约束即在表中定义一个主键来唯一确定表中每一行数据的标识符。

主键可以是表中的某一列或者多列的组合,其中由多列组合的主键称为复合主键。

推荐:《mysql教程》

主键应该遵守下面的规则:

  1. 每个表只能定义一个主键。

  2. 主键值必须唯一标识表中的每一行,且不能为 NULL,即表中不可能存在两行数据有相同的主键值。这是唯一性原则。

  3. 一个列名只能在复合主键列表中出现一次。

  4. 复合主键不能包含不必要的多余列。当把复合主键的某一列删除后,如果剩下的列构成的主键仍然满足唯一性原则,那么这个复合主键是不正确的。这是最小化原则。

在创建表时设置主键约束:

在 CREATE TABLE 语句中,主键是通过 PRIMARY KEY 关键字来指定的。
在定义列的同时指定主键,语法规则如下:

<字段名> <数据类型> PRIMARY KEY [默认值]

【实例 1】在 test_db 数据库中创建 tb_emp 3 数据表,其主键为 id,输入的 SQL 语句和运行结果如下所示。

mysql> CREATE TABLE tb_emp3
 -> (
 -> id INT(11) PRIMARY KEY,
 -> name VARCHAR(25),
 -> deptId INT(11),
 -> salary FLOAT
 -> );
Query OK, 0 rows affected (0.37 sec)
mysql> DESC tb_emp3;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| name | varchar(25) | YES | | NULL | |
| deptId | int(11) | YES | | NULL | |
| salary | float | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.14 sec)
显示全文