20141111--SQL触发器
---------------------触发器-----------------------------
--触发器本质上还是一个存储过程,trigger
--只不过不是通过exec调用执行,而是通过增删改查数据库的操作来触发
--针对主外键表操作时 将关联的表一起修改
--触发器 方便记忆的命名格式:Tr(缩写)_(表名)_(增/删/改)
--instead of 在...之前 等于 替换操作,只执行触发器里面的语句
--for (after) 在...之后 先执行语句在执行触发器内的语句
select *from Student--学生信息 alter trigger Tr_student_delete
on student
instead of delete
as
delete from score where sno=109
delete from Student where Sno=109
go
delete from Student where Sno=109 --------------------参数-------------------------
create trigger tr_dongtai
on teacher
instead of delete
as
begin
declare @tno char(10)
set @tno=(select tno from deleted)--deleted虚拟表,
update teacher set tname='刘燕' where tno=@tno
end
go
drop trigger tr_dongtai
select * from Teacher
delete from Teacher where Tno=''
-----------------------------------------
create trigger tr_teacher_insert
on teacher
for insert
as
begin
declare @tno varchar(50)
set @tno =(select tno from inserted)
delete from teachar where tno=@tno
end
--------------------禁用,开启
alter table teacher disable trigger all--禁用所有触发器
alter table teacher enable trigger all--开启所有触发器
--all改成触发器名 可以开启或禁用单个触发器
20141111--SQL触发器的更多相关文章
- SQL触发器实例讲解
SQL触发器实例1 定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序.触发器是一个特殊的存储过程. 常见的触发器有三种:分别应用于Inser ...
- SQL触发器实例
SQL触发器实例讲解(本文是来自百度文库) 备注:本人建了一个站特价汇,我想记录每个商品的点击量,然后按照点击量来牌名商品,想要提高效率,所以必须得用触发器,下面是本人在百度文库中的找到的学习资料,分 ...
- SQL触发器中的deleted表和inserted表
SQL触发器中的deleted表和inserted表 在触发器语句中用两个特殊的表一个是deleted表和inserted.它们是通过触发器操作自动创建驻留在内存中的临时表. 描述: Deleted表 ...
- SQL 触发器(学生,课程表,选修表)
SQL 触发器(学生,课程表,选修表) 触发器是一种特殊类型的存储过程,它不由用户通过命令来执行,而是在用户对表执行了插入,删除或修改表中数据等操作时激活执行.可以这样形容:存储过程像一个遥控炸弹,我 ...
- Oracle数据库之PL/SQL触发器
Oracle数据库之PL/SQL触发器 1. 介绍 触发器(trigger)是数据库提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是 ...
- PB+MS SQL+触发器必须指出
PB+MS SQL+触发器必须指出: 若触发器存在两笔以上的返回值,比方两条update 语句,被误判为数据有改变.存盘不成功. 提示: Row changed between retrieve an ...
- SQL触发器实例(下)
基本语法: Create Trigger [TriggerName] ON [TableName] FOR [Insert][,Delete][,Update] AS --触发器要执行的操作语句. G ...
- SQL 触发器-如何查看当前数据库中有哪些触发器
在查询分析器中运行: use 数据库名goselect * from sysobjects where xtype='TR' sysobjects 保存着数据库的对象,其中 xtype 为 TR 的记 ...
- 【SQL Server】SQL触发器经验详解
[SQL Server]SQL触发器经验详解 | 浏览: 4314 | 更新: 2013-01-07 15:33 25 11 全文阅读分步阅读 加入杂志 步骤 1 2 3 4 5 6 7 8 ...
- SQL触发器 inset自学经验
本人建立了一个特价汇网站,想要记录每个商品的点击量和整个网站的访问量,于是就想用sql 触发器来实现 drop trigger tgr_cg_records_update_column create ...
随机推荐
- 关于phpcmsv9更新缓存出现链接被重置的问题
今天安装phpcmsv9后更新缓存出现链接被重置的错误,..找了半天原因. . .原来是apache配置里面的keepAlive显示的是off,,应该将其改为on...然后重新启动apache....
- 终端I/O之终端窗口的大小
大多数UNIX系统都提供了一种功能,可以对当前终端窗口的大小进行跟踪,在窗口大小发生变化时,使内核通知前台进程组.内核为每个终端和伪终端保存一个winsize结构: Struct winsize { ...
- iOS本机生成证书请求文件流程
第一步:苹果机上打开“Finder”,选择“应用程序”,双击打开“实用工具” 第二步:在“实用工具”中,选“择钥匙串访问”,双击打开 第三步: “钥匙串访问”打开,看到如下页面 第四步:选择菜单中“钥 ...
- NET开发必备工具之-LINQPad
第一步,下载:http://www.linqpad.net/ 第二步,安装 第三步,打开LINQPad 第四步,添加链接 第五步,输入SQL Server,用户名,密码 第六步,点击OK,成功链接 第 ...
- C. Om Nom and Candies 巧妙优化枚举,将复杂度控制在10e6
C. Om Nom and Candies 无线超大背包问题 #include <iostream> #include <cstdio> #include <cstrin ...
- IE 9渲染overflow的bug及解决
问题: table父级元素div设置overflow:auto, 当触发table中的checkbox,dropdownlist事件控件时,父级div高度会自动增加(在底部增加空白行). 解决方案: ...
- 沈逸老师PHP魔鬼特训笔记(5)
接上一节课,我们专门新建了一个godconfig类,设置了两个属性prj_name(项目名),prj_author(作者),然后我们获取标准输入(stdin)把结果保存在了类里面. 好吧,这节课的名字 ...
- oracle PL/SQL(procedure language/SQL)程序设计(在PL/SQL中使用SQL)
在PL/SQL程序中,允许使用的SQL语句只有DML和事务控制语句,使用DDL语句是非法的.使用SELECT语句从数据库中选取数据时,只能返回一行数据.使用COMMIT, ROLLBACK, 和SA ...
- C++之时间统计
1.最精确 QueryPerformanceFrequency(&nFreq); cout <<nFreq.QuadPart<<endl;//获得计数频率 QueryP ...
- Slickflow.NET 开源工作流引擎基础介绍(二) -- 引擎组件和业务模块的交互
集成流程引擎的必要性 业务过程的变化是在BPM系统中常见的现象,企业管理层需要不断优化组织架构,改造业务流程,不可避免地带来了业务流程的变化,企业信息系统就会随之面临重构的可能性.一种直接的方式是改造 ...