zoukankan      html  css  js  c++  java
  • 手写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)

  • 相关阅读:
    MVC模式 与 Model2模型 介绍
    通过Servlet获取初始化参数
    《算法竞赛入门经典》学习笔记 2.3 文件操作
    《C++ Primer Plus》学习笔记 2.1.1 main()函数
    Codeforces Round #359 (Div. 2) C. Robbers' watch 搜索
    Github Pages建立个人博客
    《算法竞赛入门经典》第一章 程序设计入门 习题
    《C++ Primer Plus》学习笔记 第1章 预备知识
    在C#代码中应用Log4Net(一)简单使用Log4Net
    NHibernate实例
  • 原文地址:https://www.cnblogs.com/xinziyublog/p/4773054.html
Copyright © 2011-2022 走看看