mysql建表鍵約束(主鍵約束,自增約束)


-- 主鍵約束:

id  int  primary key

 可以唯一確定一張表中的一條記錄,也就是通過給某個字段添加約束,就可以使得字段不重復且不為空。

create table date (
 id  int  primary key,
 sname varchar(20)
)

 

--聯合主鍵 :

primary key(id,sname)
create table date (
id int,
sname varchar(20),
ssex  varchar(5),
sage  int,
primary key(id,sname)

)

  當你插入內容時兩條記錄字段和起來是不能重復的

insert into date values(1,'李四',18);
insert into date values(2,'李四',18);  //此時不會報錯

  當你插入的內容重復時會報錯

insert into date vlaues(1,'李四',18);
insert into date vlaues(1,'李四',18);

  

--自增約束:

auto_increment  這個時候id 就會自動增長
create table data(
id  int primary key auto_increment,
sname varchar(20)
)

  當你在插入的時候就可以不用插入id 的值

insert into data(sname) values('李四');  //當你插入內容的時候尤其要注意,  data(sname)   表名后面要接插入的字段名

  

 

當你設置自增約束時,必須要對同一字段設置其他約束,不然就會報錯。

CREATE TABLE data(
id int  auto_increment,
sname varchar(20)
)
[Err] 1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

  

--建表的時候忘記添加主鍵約束,添加表的主鍵約束,刪除表的主鍵,修改主鍵

create table data1(
id int,
sname varchar(20),
sage int
)

alter table data1 add primary key(id); //添加主鍵的語句
alter table data1 drop primary key; //刪除主鍵的語句
alter table data1 modify id int primary key; //通過修改一字段去給他添加主鍵

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM