zoukankan      html  css  js  c++  java
  • SQL SERVER 级联删除

    有三个表:

    Company

    Address

    Contact

    在Address和Contact中建立外键,外键id为company的id,

    那么就不能任意删除Company。但假如在外键约束中把级联删除选上,就会连带address和contact一起删除。

      

    SQL SERVER级联删除:在删除主表时,自动删除副表(外键约束)相应内容

    SQL SERVER级联删除包含主键值的行的操作,该值由其它表的现有行中的外键列引用。在级联删除中,还删除其外键值引用删除的主键值的所有行。

    如:

    create database temp

    go

    use temp

    go

    create table UserInfo

    (

    UserId int identity(1,1) primary key ,

    UserName varchar(20), --用户名

    password varchar(20) not null --密码

    )

    create table UserDetails

    (

    id int identity(1,1) primary key,

    name varchar(50) not null, --真实姓名

    userId int,

    foreign key (userId) references UserInfo(UserId) on delete cascade

    )

    insert UserInfo values ('ly','jeff')

    insert UserInfo values('wzq','wzqwzq')

    insert UserInfo values('lg','lglg')

    insert UserDetails values('李四',1)

    insert UserDetails values('王五',2)

    insert UserDetails values('刘六',3)

    此时:Delete From UserInfo Where UserId = 1 就可删除UserInfo表和UserDetails表的UserId=1 的内容

    insert UserInfo values ('ly','jeff')

    insert UserInfo values('wzq','wzqwzq')

    insert UserInfo values('lg','lglg')

    insert UserDetails values('李四',1)

    insert UserDetails values('王五',2)

    insert UserDetails values('刘六',3)

    此时:Delete From UserInfo Where UserId = 1 就可删除UserInfo表和UserDetails表的UserId=1 的内容。

  • 相关阅读:
    BootStrap的table技术小结:数据填充、分页、列宽可拖动
    sql优化
    myBatis---接口代理开发(demo)
    hibernate---级联保存、级联删除
    ORA-02275: 此表中已经存在这样的引用约束条件
    eclipse运行无错的ssm项目,迁移到idea出错
    node.js跨域
    ssm项目导入activiti依赖后jsp页面el表达式报错
    js页面加载完成事件
    java调用python脚本
  • 原文地址:https://www.cnblogs.com/maruko/p/3974492.html
Copyright © 2011-2022 走看看