首頁 >資料庫 >mysql教程 >表设计学习1:主键_MySQL

表设计学习1:主键_MySQL

WBOY
WBOY原創
2016-06-02 08:49:54930瀏覽

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
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn