sql表触发器创建(**L中触发器创建与调用)

:暂无数据 2025-09-04 09:20:55 0
其实sql表触发器创建的问题并不复杂,但是又很多的朋友都不太了解**L中触发器创建与调用,因此呢,今天小编就来为大家分享sql表触发器创建的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

本文目录

**L中触发器创建与调用

先给你举个触发器的实例:
先创建两个表
Create Table Student( --学生表
StudentID int primary key, --学号
....
)
Create Table BorrowRecord( --学生借书记录表
BorrowRecord int identity(1,1), --流水号
StudentID int , --学号
BorrowDate datetime, --借出时间
ReturnDAte Datetime, --归还时间
...
)
创建触发器
Create Trigger truStudent
On Student --在Student表中创建触发器
for Update --为什么事件触发,在这里就是修改的时候会执行这个触发器,一旦你修改Student表,就会执行
As --事件触发后所要做的事情
if Update(StudentID)
begin
Update BorrowRecord
Set StudentID=i.StudentID
From BorrowRecord br , Deleted d ,Inserted i --Deleted和Inserted临时表
Where br.StudentID=d.StudentID
end

**L 触发器 创建一个向学生表S中插入一新同学时能自动列出全部同学信息的触发器display_trigger;求详解

--create trigger tgr_name
--on table_name
--with encrypion –加密触发器
--    for update...
--as
--    Transact-**L

create trigger display_trigger
on S  for insert
as
   select * from S

怎么创建**L表UPDATE触发器

触发器是一种特殊的存储过程,类似于其它编程语言中的事件函数,**L Server�6�4 允许为 INSERT、UPDATE、DELETE 创建触发器,当在表(视图)中插入、更新、删除记录时,触发一个或一系列 T-**L 语句。
1:创建触发器:
�0�3触发器可以在企业管理器里创建,也可以在表名上点右键-》“所有任务”-》“管理触发器”来创建。
�0�3用 CREATE TRIGGER创建触发器CREATE TRIGGER 触发器名称
ON 表名
FOR INSERT、UPDATE 或 DELETE
AS
T-**L 语句例:
USE Northwind
CREATE TRIGGER Category_Delete
ON Categories
FOR DELETE
AS
UPDATE P SET Discontinued = 1
FROM Products AS P INNER JOIN deleted AS d
ON P.CategoryID = d.CategoryID

sql触发器的创建

# 创建insert类型触发器
--创建insert插入类型触发器
if (object_id(’tgr_classes_insert’, ’tr’) is not null)
drop trigger tgr_classes_insert
go
create trigger tgr_classes_insert
on classes
for insert --插入触发
as
--定义变量
declare @id int, @name varchar(20), @temp int;
--在inserted表中查询已经插入记录信息
select @id = id, @name = name from inserted;
set @name = @name + convert(varchar, @id);
set @temp = @id / 2;
insert into student values(@name, 18 + @id, @temp, @id);
print ’添加学生成功!’;
go
--插入数据
insert into classes values(’5班’, getDate());
--查询数据
select * from classes;
select * from student order by id;
insert触发器,会在inserted表中添加一条刚插入的记录。
# 创建delete类型触发器
--delete删除类型触发器
if (object_id(’tgr_classes_delete’, ’TR’) is not null)
drop trigger tgr_classes_delete
go
create trigger tgr_classes_delete
on classes
for delete --删除触发
as
print ’备份数据中……’;
if (object_id(’classesBackup’, ’U’) is not null)
--存在classesBackup,直接插入数据
insert into classesBackup select name, createDate from deleted;
else
--不存在classesBackup创建再插入
select * into classesBackup from deleted;
print ’备份数据成功!’;
go
--
--不显示影响行数
--set nocount on;
delete classes where name = ’5班’;
--查询数据
select * from classes;
select * from classesBackup;
delete触发器会在删除数据的时候,将刚才删除的数据保存在deleted表中。
# 创建update类型触发器
--update更新类型触发器
if (object_id(’tgr_classes_update’, ’TR’) is not null)
drop trigger tgr_classes_update
go
create trigger tgr_classes_update
on classes
for update
as
declare @oldName varchar(20), @newName varchar(20);
--更新前的数据
select @oldName = name from deleted;
if (exists (select * from student where name like ’%’+ @oldName + ’%’))
begin
--更新后的数据
select @newName = name from inserted;
update student set name = replace(name, @oldName, @newName) where name like ’%’+ @oldName + ’%’;
print ’级联修改数据成功!’;
end
else
print ’无需修改student表!’;
go
--查询数据
select * from student order by id;
select * from classes;
update classes set name = ’五班’ where name = ’5班’;
update触发器会在更新数据后,将更新前的数据保存在deleted表中,更新后的数据保存在inserted表中。

**L server 创建触发器

create trigger tri
before insert
on 成绩表
for each now
begin
if :new.pscj《30 and :new.qmcj《30 then
update 成绩表 set pscj=(:new.pscj+10) and qmcj=(:new.qmcj+10)
end if
大概意思是这样的,我用的是Oracle写的,:new表示新插入的数据

sql server 中如何建立触发器

你可以直接用语句写呀,如:
CREATE
TRIGGER
[TRIGGER
NAME]
ON
.[TABLE
NAME]
FOR
INSERT,
UPDATE,
DELETE
AS
或者你用**L
SERVER的企业管理器,选中要建立触发器的表,点后键,然后选择管理触发器,这时会弹出一个窗口,然后自己编写触发器就OK了。

**L如何创建一个触发器

创建触发器用 CREATE TRIGGER
CREATE TRIGGER 触发器名称
ON 表名
FOR INSERT、UPDATE 或 DELETE
AS T-**L 语句
注意:触发器名称是不加引号的。
例子:
create trigger jcsj_1
on 表名
for insert
as
begin
update 表名 set 授课门数=授课门数+1 where 教师ID=(select 教师 ID from inserted)
end
详见
***隐藏网址***
请采纳答案,支持我一下。

**L触发器怎么做

CREATE
TRIGGER
ON
员工表
AFTER
DELETE
AS
BEGIN
DELETE
FROM
工资表
WHERE
员工编号
IN
(SELECT
员工编号
FROM
deleted)
END
CREATE
TRIGGER
ON
员工表
AFTER
UPDATE
AS
BEGIN
UPDATE
工资表
SET
部门编号=(SELECT
部门编号
FROM
inserted)
WHERE
员工编号=(SELECT
员工编号
FROM
inserted)
END

sql server2012如何建立触发器

  • 首先你当然要有一个数据库了,这里我使用自己创建的数据库booksDB。

    在数据库booksDB上创建触发器,右击触发器-》新建触发器,打开之后的界面如下所示

    请点击输入图片描述

    请点击输入图片描述

  • 在我们上面打开的有代码的界面中,我们需要改动的地方就是我划了红线的地方。我在下面的图中给出了一个小例子。大家可以参照着打下

    请点击输入图片描述

  • 执行,刷新,结果如下:

    请点击输入图片描述

  • 向books表中增加数据:

    我们先导出insert脚本,将需要插入的修改下,如下图,

    请点击输入图片描述

    请点击输入图片描述

  • 执行,我这里就执行出两条结果,一条是查询insert表的数据,另外一条是查询表books的数据

    请点击输入图片描述

  • 6

    数据库的增删改查类似

以上就是我们为大家找到的有关“sql表触发器创建(**L中触发器创建与调用)”的所有内容了,希望可以帮助到你。如果对我们网站的其他内容感兴趣请持续关注本站。
本文编辑:admin

更多文章:


apipost教程(apipost怎么登录填验证码的网站)

apipost教程(apipost怎么登录填验证码的网站)

大家好,关于apipost教程很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于apipost怎么登录填验证码的网站的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助

选项卡怎么设置(浏览器选项卡怎么设置)

选项卡怎么设置(浏览器选项卡怎么设置)

各位老铁们好,相信很多人对选项卡怎么设置都不是特别的了解,因此呢,今天就来为大家分享下关于选项卡怎么设置以及浏览器选项卡怎么设置的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

slide中文(请把英语翻译成中文,谢谢)

slide中文(请把英语翻译成中文,谢谢)

大家好,slide中文相信很多的网友都不是很明白,包括请把英语翻译成中文,谢谢也是一样,不过没有关系,接下来就来为大家分享关于slide中文和请把英语翻译成中文,谢谢的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!

sql表触发器创建(**L中触发器创建与调用)

sql表触发器创建(**L中触发器创建与调用)

其实sql表触发器创建的问题并不复杂,但是又很多的朋友都不太了解**L中触发器创建与调用,因此呢,今天小编就来为大家分享sql表触发器创建的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

vue框架的优势(Vue.js的特点和优势是什么)

vue框架的优势(Vue.js的特点和优势是什么)

大家好,vue框架的优势相信很多的网友都不是很明白,包括Vue.js的特点和优势是什么也是一样,不过没有关系,接下来就来为大家分享关于vue框架的优势和Vue.js的特点和优势是什么的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我

shell编程是啥(linux的shell编程与用gcc实现c编程有什么不同有什么优点)

shell编程是啥(linux的shell编程与用gcc实现c编程有什么不同有什么优点)

本篇文章给大家谈谈shell编程是啥,以及linux的shell编程与用gcc实现c编程有什么不同有什么优点对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏

arraysort是什么排序(Arrays.sort使用的排序算法)

arraysort是什么排序(Arrays.sort使用的排序算法)

各位老铁们好,相信很多人对arraysort是什么排序都不是特别的了解,因此呢,今天就来为大家分享下关于arraysort是什么排序以及Arrays.sort使用的排序算法的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

float类型 自动转化为double(float型数据怎么转换成double型数据 求解)

float类型 自动转化为double(float型数据怎么转换成double型数据 求解)

各位老铁们,大家好,今天由我来为大家分享float类型 自动转化为double,以及float型数据怎么转换成double型数据 求解的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢

html在线编辑器源代码(微信编辑器中的HTML代码有什么用)

html在线编辑器源代码(微信编辑器中的HTML代码有什么用)

大家好,今天小编来为大家解答以下的问题,关于html在线编辑器源代码,微信编辑器中的HTML代码有什么用这个很多人还不知道,现在让我们一起来看看吧!

accepted是什么意思英语(接受 用英语怎么说)

accepted是什么意思英语(接受 用英语怎么说)

这篇文章给大家聊聊关于accepted是什么意思英语,以及接受 用英语怎么说对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

最近更新

3090笔记本(30系笔记本显卡宽位)
2025-09-04 12:40:02 浏览:0
热门文章

口语100下载(口语100电脑版怎样下载)
2025-06-27 09:00:02 浏览:10
标签列表