sql server 触发器 中 for 怎么使用
发布网友
发布时间:2022-04-24 01:43
我来回答
共3个回答
懂视网
时间:2022-04-07 23:10
第一步:创建触发器
找到自己要创建触发器的表-触发器-新建触发器。
第二步:填写所需要信息
点击新建触发器以后,就会出现数据库为我们创建的一些初始化的代码,如下:
我们需要写的地方就是从CREATE TRIGGER开始,举个例子可能更好理解,比如,我们需要在A表进行删除操作之后,对B表也进行删除操作,假设AB表的自增id相同,那么写法就是:
CREATE TRIGGER trigADelete(触发器名,自己编写即可)
ON A(表示对表A进行操作)
AFTER DELETE(表明在对表A进行删除操作之后)
AS
BEGIIN
delete B where id=(select id from A where 删除A表信息的语句)
END
其他诸如搜索,添加语句也都大同小异,编写完语句以后,运行一次,咱们的触发器就成功创建成功了。
触发器的创建,就是这么简单,但是,再简单的事情,不去做的话,最后都会变成难!所以,想要学习什么,去做一下,收获会更大,加哟!
【牛腩视频】之SQL触发器
标签:数据库
热心网友
时间:2022-04-07 20:18
创建触发器的语法是:
create trigger 触发器名称 on(为哪个表创建触发器) for (创建什么样的触发器)
只要记住,for后面跟触发器的类型就行了。
触发器主要分2种,DML和DDL。after和instead of 都是DML触发器,其中,after主要是对表进行增、删、改时触发,而instead of 触发器并不执行其所定义的操作,只执行触发器本身。
热心网友
时间:2022-04-07 21:36
其实MS-SQL只有两种触发器
for 触发器,执行后触发器
也可以写成:for after 只不过after可写可不写,一般省略掉了
在用户执行数据操作之后,触发器触发,执行触发器代码
如:
表1(ID,NAME)
表2(ID,NAME)
当用户插入表1数据后,表2也被插入相同的数据:
代码如下:
create trigger Mytr
on 表1
for insert
as
insert into 表2 select * from inserted
还有instead of 执行前触发器
在用户执行数据操作数据之前,触发器触发,执行触发器代码,不执行用户的操作
根据这个特性,instead of 触发器可以为视图添加数据操作的功能
如:
表:
表1(ID,NAME) 表2(ID,DATE)
视图 :
DATA(表1.ID,表1.NAME,表2.DATE)
为DATA视图添加insert操作:代码如下
create triger trgName
on DATA
instead of insert
as
begin
insert into 表1 select ID,NAME from inserted
insert into 表2 select ID,DATE from inserted
end