欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

表设计学习1:主键_MySQL

程序员文章站 2024-01-31 21:39:52
...
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约束,使其不为空

然后分别建立两个原子性的数据列

表设计学习1:主键_MySQL

bitsCN.com
相关标签: 信息