zoukankan      html  css  js  c++  java
  • oracle级联操作

    在加入foreing key约束时,还能够指定级联操作的类型,主要用于确定当删除(on delete) 附表中的一条记录时,怎样处理子表中的外键字段,有例如以下三种引用类型。

    cascade
    此keyword用于表示当删除主表中被引用列的数据时,将子表中对应应用列的值置为null值,这样的情况要求子表中的引用列支持null值
    set null
    此keyword用于当删除主表中被引用列的数据时。将子表中对应引用列的值设置为null值。

    这样的情况要求子表中的应用列支持null值。


    not action
    此keyword用于表示当删除主表中被引用的数据时,假设子表的引用列种包括该值,则禁止操作运行。

    默觉得该选项。

    详细的操作例如以下:
    SQL> create table stuclass(
      2  cid number(4) primary key,
      3  cname varchar2(40),
      4  num number(4)
      5  );
    表已创建。


    SQL> create table stu(
      2  sid number(4),
      3  scode varchar(10),
      4  sname varchar(20),
      5  cid number(4) references stuclass(cid) on delete set null
      6  );
    表已创建。
    SQL> insert into stuclass values(1,'oracle',35);
    已创建 1 行。
    SQL> insert into stu values(1,'s001','aaa',1);
    已创建 1 行。


    SQL> delete stuclass where cid=1;
    已删除 1 行。


    SQL> select * from stuclass;
    未选定行
    SQL> select * from stu;
           SID SCODE      SNAME                       CID
    ---------- ---------- -------------------- ----------
             1 s001       aaa
    SQL>

  • 相关阅读:
    测网速
    fseek 在以字符串模式打开的文件中工作不正常 [MSDN]
    Inno Setup: Ask for reboot after uninstall
    【Inno Setup】Pascal 脚本 ---- 事件函数
    在安装程序之前,预先安装别的程序
    【Inno Setup】查看是否安装了VC++ 2015 Redistributeable
    spark学习笔记
    docker学习笔记2
    kafka读书笔记《kafka权威指南》2018
    mongodb
  • 原文地址:https://www.cnblogs.com/gccbuaa/p/6875346.html
Copyright © 2011-2022 走看看