sqlserver
数据库对于数据完整性的要求。
1.域完整性:关于列的设置可以通过(设置数据类型,检查约束,默认值,非空约束),来达到域的完整性。
2.实体完整性:关于行(记录),的数据完整性可以通过设置(唯一约束,主键约束,标识列)来完成对实体完整性的设置。
标识列的数据类型必须是整型类型,设置后不能编辑,会自动的设置。
3.引用完整性:关于主外键的约束(主表和从表,把主表的主键放在从表的里当做外键来完成主外键约束,主表里有的主键行从表里可以
没有,但是从表里有对应行,主表里必须得有。一般的业务逻辑不是很强的,不建议使用主外键关联。)
相关设置代码如下:
delete from student where student_name = '周星驰'
select * from student
create table teacher
(
id_teacher varchar(20) not null,
teacher_name varchar(20) not null,
teacher_sex varchar(2) null,
teacher_work varchar(20) null,
teacher_tel varchar(11) not null
)
alter table teacher
add constraint pk_teacher primary key(id_teacher)
alter table teacher
add constraint uk_teacher unique(teacher_name)
alter table teacher
add constraint dk_teacher default '帅哥' for teacher_work
alter table teacher
add constraint ck_teacher check(teacher_sex in ('男', '女'))
create table course
(
id_course varchar(20) primary key not null,
course_name varchar(20) unique not null,
course_time int check(course_time >= 30) null,
)
alter table grade
add constraint fk_grade foreign key(course_id) references course(id_course)
drop table course