• 手写sql代码增加约束


    当创建了主外键关系后,如果在外键表中有任何记录引用了主键表中的某条记录,则在主键表中不能删除该记录。同时主键表也不能删除。

    新建一张表:员工信息表

    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) primary key,

      DepName varchar(50) unique not null 

    )

    Drop table Employees

    select * from Employees

    --============手动增加约束==========

    --手动删除一列(删除EmpAddress列)

    alter table Employees drop column EmpAddress

    --手动增加一列(增加一列EmpAddr varchar(1000))

    alter table Employees add EmpAddr11 varchar(500),AA int ,bb varchar(10)

    --手动修改一下EmpEmail的数据类型(varchar(200))

    alter table Employees alter column EmpAddr varchar(1000)

    --为EmpId增加一个主键约束

    alter table Employees add constraint PK_EmpId primary key(EmpId)

    --非空约束,为EmpName增加一个非空约束

    alter table Employees alter column EmpName varchar(50) not  null

    --为EmpName增加一个唯一约束

    alter table Employees add constraint UQ_EmpName unique(EmpName)

    --为性别增加一个默认约束,默认为'男'

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

    --为年龄增加一个检查约束:年龄必须在-120岁之间,含岁与岁。

    alter table Employees add constraint CK_EmpAge check(EmpAge >=0 and EmpAge<=120)

    --创建一个部门表,然后为Employee表增加一个DepId列。

    alter table Employees add DeptId int

    --增加外键约束

    alter table Employees add constraint FK_DeptId_DepId foreign key(DeptId) references Department(DepId)

  • 相关阅读:
    Map
    Enumeration输出
    iterator的基本用法
    Annotation整合工厂设计模式
    自定义Annotation
    Annotation
    动态代理设计模式
    静态代理设计模式
    自定义ClassLoader
    获取类的类对象的几种方式
  • 原文地址:https://www.cnblogs.com/xinziyublog/p/4773054.html
Copyright © 2020-2023  润新知