手写T-SQL创建约束

---------------------------手写T-SQL创建约束------------------------------
alter table Employees add constraint FK_Employees_Department_EmpDepId foreign key(EmpDepId)
references Department(DepId) on delete cascade on update cascade
drop table Department
drop table Employees

create table Employees
(
 EmpId int identity(1,1),
 EmpName varchar(50),
 EmpGender char(2),
 EmpAge int,
 EmpEmail varchar(100),
 EmpAddress varchar(500)
)
create table Department
(
 DepId int identity(1,1),
 DepName varchar(50)
)
-----------------1.为Department创建主键约束----------------------
alter table Department
add constraint PK_Department_DepId
primary key(DepId)

------------------2.增加一个唯一约束------------------
alter table Department
add constraint UQ_Department_DepName
unique(DepName)

-------------------3.向Employees增加一个主键约束--------------
alter table Employees add
constraint PK_Employees_EmpId primary key(EmpId)

-----------------4.向姓名增加一个唯一约束-----------------
alter table Employees add
constraint UQ_Employees_EmpName unique(EmpName)

-----------------5.向姓名中增加一个非空约束--------------------
alter table Employees alter column EmpName
varchar(50) not null


-----------------6.删除姓名中的唯一约束-------------------------------
alter table Employees drop constraint UQ_Employees_EmpName


--------------7.性别增加一个检查约束,要求男或女,默认约束为男--------
alter table Employees add constraint CK_Employees_EmpGender
check(EmpGender='男' or EmpGender='女')

alter table Employees add constraint DF_Employees_EmpGender default('男')
for EmpGender

-------------8.年龄增加一个检查约束-----------------------------
alter table Employees add constraint CK_Employees_EmpAge
check(EmpAge>=18 and EmpAge<=60)

--------------9.Email增加一个唯一约束-------------------------
alter table Employees add constraint UQ_Employees_EmpEmail
unique(EmpEmail)

---------------10.增加一列-------------------------------
alter table Employees add EmpDepId int not null

----------------11.为列增加外键约束-----------------------------
alter table Employees add constraint FK_Employees_EmpDepId
foreign key(EmpDepId) references Department(DepId)

---------------12.删除约束--------------------------------------
alter table Employees drop constraint FK_Employees_EmpDepId

---------------13.增加级联------------------------------------
alter table Employees add constraint FK_Employees_EmpDepId
foreign key(EmpDepId) references Department(DepId)
on delete cascade
on update cascade


-----------------------------14.通过一句话来删除所有约束----------------
alter table Employees drop constraint FK_Employees_EmpDepId,
UQ_Employees_EmpEmail,CK_Employees_EmpAge

-----------------15.通过一句话来创建多个约束------------------------
alter table Employees add constraint FK_Employess_EmpDepId foreign
key(EmpDepId) references Department(DepId),constraint UQ_Employees_EmpEmail
unique(EmpEmail)

--------------------16.通过创建表来直接创建约束-------------------
create table Employees
(
 EmpId int identity(1,1) primary key,
 EmpName varchar(50) not null unique,
 EmpGender char(2) check(EmpGender='男' or EmpGender='女') default('男'),
 EmpAge int check(EmpAge>=18 and EmpAge<=60),
 EmpEmail varchar(100) unique,
 EmpAddress varchar(500) not null,
 EmpDepId int foreign key references Department(DepId)
)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值