Home >Database >Mysql Tutorial >表设计学习1:主键_MySQL
bitsCN.com
1.表中的数据应该具有原子性,也就是列中所包含的信息可以满足最高效率的查询操作,但这仍不足以达到第一范式
2.每个数据行必须有独一无二的识别项,也就是所谓的主键(Primary Key)
3.主键是表中的某个列,它可以让每一条记录成为唯一的
4.可以重复的数据列绝对不可以作为主键,类似身份ID也不可以,因为一旦数据库被入侵,就意味着客户资料被曝光
5.主键不可以为NULL,如果主键是NULL,它就不可能唯一,因为其他记录也可能包含NULL
6.插入新记录时必须指定主键值,如果没有主键值就意味着存在主键值是NULL的风险,而且可能让表存在重复记录,违反了规范原则
7.主键必须干净简洁,不应该有冗余内容
8.主键值不可以被修改,如果可以改变主键值,那就会冒着意外输入已使用值的风险,破坏主键的唯一性
9.创建主键的最佳方式是建立一个包含唯一性主键的列,比如编号ID列
示例:
mysql> CREATE TABLE student( -> id INT PRIMARY KEY NOT NULL, -> first_name VARCHAR(20), -> last_name VARCHAR(30) -> );Query OK, 0 rows affected (0.16 sec)
此处将id列设置为主键,并且设置NOT NULL约束,使其不为空
然后分别建立两个原子性的数据列
bitsCN.com