mysql添加主键约束

mysql添加主键约束,第1张

主键约束:唯一,不重复,不能为空  primary key

一个表中有且只有一个主键约束

1.创建表的同时创建主键约束

格式一:

create table 表名(

列名1  数据类型 primary key,

列名2 数据类型

)

主键约束名字的写法: PK_列名

格式二:

create table 表名(

列名1 数据类型,

列名2 数据类型,

constraint  主键约束的名字  primary key(列名1)

)

格式三:

create table 表名(

列名1 数据类型,

列名2 数据类型,

primary key(列名1)

)

2.针对已经存在的表,添加主键约束

格式一:

alter table 表名 modify 列名 数据类型 primary key;

格式二:

alter table 表名 add primary key(列名)

格式三:

alter table 表名 add constraint 主键约束的名字 primary key(列名)

3.删除主键约束

格式:alter table 表名 drop primary key

1.主键语法

①创建时:create table sc (

studentno int,

courseid int,

score int,

primary key (studentno) )

②修改时:ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名)

前提是原先没有设置主键。

2.外键语法

①创建时:create table sc (

studentno int,

courseid int,

score int,

foreign key (courseid) )

②修改时:

ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[约束名] FOREIGN KEY (info_id)[子表列] REFERENCES news_type[主表名] (id)[主表列]

3.使用组合主键

如果一列不能唯一区分一个表里的记录时,可以考虑多个列组合起来达到区分表记录的唯一性,形式

①创建时:create table sc (

studentno int,

courseid int,

score int,

primary key (studentno,courseid) )

②修改时:alter table tb_name add primary key (字段1,字段2,字段3)

前提是原来表中没有设置主键,若原先已有主键则会报错。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11459841.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存