约束的添加

约束的添加,第1张

语法:

ALTER TABLE 表名

ADD CONSTRAINT 约束名 约束 类型 具体的约束说明

上述语法表示修改某个表,添加某个约束。其中,约束名的命名规则推荐采用“约束类型_约束字段”这样的形式。

示例:

添加主键约束(将stuNo设为主键):

ALTER TABLE stuInfo

ADD CONSTRAINT PK_stuNo PRIMARY KEY (stuNo)

添加唯一约束(身份z号唯一):

ALTER TABLE stuInfo

ADD CONSTRAINT UQ_stuID UNIQUE (stuID)

添加默认约束(如果地址不填,默认为“地址不详”):

ALTER TABLE stuInfo

ADD CONSTRAINT DF_stuAddress DEFAULT ('地址不详') FOR stuAddress

添加检查约束(要求年龄只能在 15~40岁之间)

ALTER TABLE stuInfo

ADD CONSTRAINT CK_stuAge CHECK(stuAge BETWEEN 15 AND 40)

添加外键约束(主表 stuInfo 和从表 stuGrade 建立关系,关联字段为 stuNo ):

ALTER TABLE stuGrade

ADD CONSTRAINT FK_stuNo

FOREIGN KEY (stuNo) REFERENCES stuInfo(stuNo)

GO

主键约束:唯一,不重复,不能为空  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

不能这么写吧

添加完复合主键之后再添加unique约束

alter table borrow add cosntraint PK_ID primary key(Rid,bid,lenddate)--添加表级复合主键

alter table borrow add constraint CK_ID check(ID>0)--添加标级check约束

你那个写法,只能在create table 时候这么写吧,我测试没有通过,只有create时候好用

create table tb(co1 int not null)

alter table tb add constraint PK_co1 primary key(co1)

alter table tb add constraint CK_co1 check(co1<>10)

drop table tb

create table tb(co1 int not null)

create table tb(co1 int not null constraint PK_co1 primary key(co1) constraint CK_co1 check(co1<>10))


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

原文地址:https://54852.com/bake/7898043.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存