• SQLserver的七种约束。


    SQLserver的七种约束。

    create table teacher
    (teacher_id int primary key,
    teacher_name nvarchar(30)not null,
    tlevel char(1) default('0') )

    CREATE TABLE courses(cour_no
    int,--加了主键会默认加上not null
    constraint pk_cour_no primary key (cour_no),
    cour_name nvarchar(20) not null,
    teacher_id int,
    constraint FK_teacher_id foreign key (teacher_id) references teacher(teacher_id),--做外键的字段要映射teacher表去,对应的是teacher表中的teacher_id这个字段。
    remark nvarchar(max))
    --选课表:学生的学号 选课的课号 --复合主键 复合主键是指两个字段组合起来不能重名、重复。选课表是一个关系表,不是实际存在的。关系表 表示:学生 和 课程 和 老师
    create table stu_cou(
    stu_no int,
    cour_id int,
    constraint PK_stuNO_CourID primary key(stu_no,cour_id),--
    constraint FK_stu_no Foreign key (stu_no) references Student(stu_no),
    constraint FK_COUR_ID foreign key (cour_id) references courses(cour_no))
    --注意:外键中添加的数据如果在主键中找不到该数据,是不会让其保存进去的。
    --七种约束:
    --1.主键
    --2.外键
    --3.not null
    --4.default() 如果字段的属性是int的默认就要给整型,如default(0),如果字段的属性是字符串的你就要给它整型或者空' '
    --5.唯一约束 unique 在表里可以存在多个唯一 我这个约束里面不能存在同样的值。
    --6.check 自定义的约束 只允许我们的sex只能填 男 或女
    --7.identity 自增约束 自增约束是系统自动填值进去,它是从哪个值开始,每次增加多少。 identity(1,1)前面表示从1开始,后者表示每次增长1
    --主键:
    primary key
    constraint pk_cour_no primary key (cour_no)
    --复合主键:
    constraint PK_stuNO_CourID primary key(stu_no,cour_id)
    --外键:
    constraint FK_teacher_id foreign key (teacher_id) references teacher(teacher_id)
    alter table student_cou add constraint FK_stu_no Foreign key (stu_no) references Student(stu_no)
    --
    alter table student
    add constraint CK_sex check(sex='男' or sex='女')

    --有多个时:
    alter table student
    add constraint CK_sex check (sex in('男','女','人妖'))

    alter table courses
    add constraint uq_teacher_id unique(teacher_id) --指的是teacer_id 和remark加起来不能重复。

  • 相关阅读:
    IMX6ULL开发板虚拟机eVMware的安装
    IMX6ULL开发板Ubuntu系统初体验之登录设置
    itop4412开发板QtE4.7UVC摄像头使用例程
    iTOP4412开发板android4.4代码下载和编译
    IMX6ULL开发板之Ubuntu常用命令(二)
    IMX6ULL开发板aptget软件下载工具
    4412开发板编译ARMqtopiafreesrc2.2.0常见错误的处理
    IMX6ULL开发板虚拟机安装Ubuntu系统
    伟大的程序员是怎样炼成的?
    Created field method on datasource in AX Form
  • 原文地址:https://www.cnblogs.com/xionda/p/15812319.html
Copyright © 2020-2023  润新知