sqlserver數據庫設計完整性與約束
阿新 • • 發佈:2018-11-24
value end 完整性 ima def uniq serve con hone
1 use StudentManageDB 2 go 3 --創建主鍵約束 4 5 if exists(select * from sysobjects where name=‘pk_StudentId‘) 6 alter table Students drop constraint pk_StudentId 7 alter table Students add constraint pk_StudentId primary key(StudentId) 8 9 --創建唯一約束 10 if exists(select * from sysobjects where name=‘uq_StudentIdNo‘) 11 alter table Students drop constraint uq_StudentIdNo 12 alter table Students add constraint uq_StudentIdNo unique(StudentIdNo) 13 14 --創建檢查約束 15 if exists(select * from sysobjects where name=‘ck_Age‘) 16 alter table Students drop constraint ck_Age 17 alter table Students add constraintck_Age check(Age between 18 and 25) 18 19 if exists(select * from sysobjects where name=‘ck_PhoneNumber‘) 20 alter table Students drop constraint ck_PhoneNumber 21 alter table Students add constraint ck_PhoneNumber check(len(PhoneNumber)=11) 22 23 24 update Students set PhoneNumber=‘13099012876‘ whereStudentId=10000 25 select * from Students 26 27 --創建默認值 28 if exists(select * from sysobjects where name=‘df_StudentAddress‘) 29 alter table Students drop constraint df_StudentAddress 30 alter table Students add constraint df_StudentAddress default(‘地址不詳‘) for StudentAddress 31 32 insert into Students (StudentName,Gender,Birthday,Age,StudentIdNo ,PhoneNumber, 33 StudentAddress,ClassId) 34 values(‘李小璐‘,‘女‘,‘1989-01-12‘,24,120229198901121315, ‘13099012876‘,default,1) 35 36 insert into Students (StudentName,Gender,Birthday,Age,StudentIdNo ,PhoneNumber, 37 ClassId) 38 values(‘李小璐‘,‘女‘,‘1989-01-12‘,24,120229198901121316, ‘13099012876‘,1) 39 40 --外鍵約束 41 insert into StudentClass (ClassId,ClassName) values(1,‘軟件1班‘) 42 if exists(select * from sysobjects where name=‘fk_ClassId‘) 43 alter table Students drop constraint fk_ClassId 44 alter table Students add constraint fk_ClassId foreign key (ClassId) references StudentClass(ClassId) 45 46 select * from studentClass
sqlserver數據庫設計完整性與約束