zoukankan      html  css  js  c++  java
  • SQL server 触发器

    触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。

    Ø 什么是触发器

        触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。

       一个表的一个动作只能有一个触发器。

    创建一个数据库,两个表

    create table users

    (

    ids int primary key identity(1,1),

    name nvarchar(10),

    class nvarchar(10),

    )

    create table class

    (

    class_code nvarchar(10) primary key,

    class_name nvarchar(10),

    )

    delete from users where ids=1  这是准备触发触发器的句子

    第一种方法针对的动作执行之后,执行触发器

    create trigger users_delete ——对users表的delete动作建立一个触发器(名字)

    on users ——   on  哪一个表

    for delete ——for   哪一个动作之后

    as    检测到delete动作执行之后

    select * from users —— 执行什么动作

    第二种方法把针对的动作替换成触发器里的句子,不会执行那个动作

    create trigger users1_delete    

    on users

    instead of delete   --instead of 哪一个动作之前

    as

    select * from users(如果吧users换成deleted,就可把要删除的那个数据显示出来)

    两种方法其实就是一个在执行前触发,一个再执行后触发。执行后触发比较保险。

     

     
  • 相关阅读:
    【原创】用python写的一个监测本地进程CPU占用的程序
    CSS清除浮动的7种方法以及优缺点
    JavaScript函数作用域
    BOM的概念以及相关操作
    文件与文件系统的压缩与打包
    CSRF
    netstat 命令详解
    httpd安装
    ubuntu 耳机没声音
    Linu正常使用MobaXterm
  • 原文地址:https://www.cnblogs.com/big-lll/p/6566362.html
Copyright © 2011-2022 走看看