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