CREATE TABLE table_name(... , phone VARCHAR(20) , PRIMARY KEY(phone));
再创建table时,我们可以将资料设为唯一性,设置指定column为primary key
,表唯一性且不可为null,此时我们再插入值时,就不可重複给予相同的值,否则会报错。
此时,我们Insert值进去,在Insert重複值至有设置primary key 的column时,可发现会出现报错。
CREATE TABLE table_name (id INT AUTO_INCREMENT , name VARCHAR(20) , ... , PRIMARY KEY(id,name));
我们可以给予资料唯一性,也就是给予每个资料一个id,而当然我们同时也能让多个column做primary key
,此时指令需要打成这样PRIMARY KEY(xxx1,xxx2)
,而非(xxx1 PRIMARY KEY,xxx2 PRIMARY KEY),这样会报错。而此时我们给予其column相同的值也没关係,(id+name)只要其组合起来不重複就OK。所以两个name都是a并不会报错。
注意,当有column设置成了AUTO_INCREMENT,则必须同时设置成PRIMARY KEY或者UNIQUE
。
而什么是UNIQUE我们下面会继续介绍。
CREATE TABLE table_name (a INT PRIMARY KEY , b VARCHAR(20) UNIQUE ) ;
可以看出 UNIQUE 与 PRIMARY KEY设置之区别在于UNIQUE可为NULL
,而PRIMARY KEY不可为NULL。