MYSQL:基礎—主鍵
1.什么是主鍵
表中的每一行都應該具有可以唯一標識自己的一列(或一組列)。而這個承擔標識作用的列稱為主鍵。
如果沒有主鍵,數據的管理將會十分混亂。比如會存在多條一模一樣的記錄,刪除和修改特定行十分困難。
2.那些列可以作為主鍵:
任何列都可以作為主鍵,只要它滿足以下條件:
• 任何兩行都不具有相同的主鍵值。就是說這列的值都是互不相同的。
• 每個行都必須具有一個主鍵值。主鍵列不允許設置為NULL。
• 主鍵列的值不建議進行修改和更新。
3.聲明主鍵的方法
在創建表的時候決定是否有主鍵:
1.最簡單的:
CREATE TABLE t1(
id int not null,
name char(20)
);
2.帶主鍵的:
CREATE TABLE t1(
id int not null primary key,
name char(20)
);
3.帶復合主鍵的:
CREATE TABLE t1(
id int not null,
name char(20),
primary key (id,name)
);
4.主鍵自增的:
create table dd(
id int primary key not null auto_increment,
name varchar(20),
time timestamp default current_timestamp
);
5.創建完后再決定主鍵
create table t(
id int not null,
name varchar(200) not null,
time timestamp default, current_timestamp
);
alter table t add primary key (id);