SQL语句创建约束

 

 

 

--===============================================
create table Employees
(
    EmpId int identity(1,1),
    EmpName varchar(50),
    EmpGender char(2),
    EmpAge int,
    EmpEmail varchar(100),
    EmpAddress varchar(500)
)

go
create table Department
(
    DepId int identity(1,1),
    DepName varchar(50)
)

drop table Employees
drop table Department



--================先通过设计器手动添加,然后通过代码来添加====

--============手动增加约束==========
--手动删除一列(删除EmpAddress列)
alter table Employees drop column EmpAddress
go

--手动增加一列(增加一列EmpAddr varchar(1000))
alter table Employees add EmpAddr varchar(1000)

--手动修改一下EmpEmail的数据类型(varchar(200))
alter table Employees alter column EmpAddr varchar(200)
go

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

--非空约束,为EmpName增加一个非空约束,修改列为not null
--增加一个非空约束其实就是修改列
alter table Employees 
alter column EmpName varchar(50) not null
go

--为EmpName增加一个唯一约束
alter table Employees add constraint
UQ_Employees_EmpName unique(EmpName)
Go


--为性别增加一个默认约束,默认为'男'
alter table Employees add constraint
DF_Employees_EmpGender default('') for EmpGender 

go



--为年龄增加一个检查约束:年龄必须在0-120岁之间,含0岁与120岁。
alter table Employees add constraint
CK_Emplpoyees_EmpAge check(empage>=0 and empage<=120)
go





--增加外键约束,表Employee中有一列EmpDeptId引用TblDepartment表中的DeptId

alter table Employees add  DeptId int not null
alter table Department add constraint
PK_Department_DeptId primary key(DepId)


alter table Employees add constraint
FK_Employees_Department foreign key(DeptId) 
references Department(DepId) on delete cascade


--先删除原来的外键
alter table Employees drop constraint FK_Employees_Department



--删除某个名字的约束

--一条语句删除多个约束,约束名用 逗号 隔开
alter table Employees drop constraint
 FK_Employees_Department,
 CK_Emplpoyees_EmpAge,
UQ_Employees_EmpName

--用一条语句为表增加多个约束。 
alter table Employees add 
constraint UQ_Employees_EmpName unique(EmpName),
constraint CK_Emplpoyees_EmpAge check(EmpAge>=0 and EmpAge<=120)

create table t1
(
    autoId int,
    uname varchar(50)
    
)

alter table t1 alter column autoId int identity(1,1)

 

posted @ 2013-12-17 21:19  wbkboy  阅读(363)  评论(0)    收藏  举报