问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

SQL 触发器 应用

发布网友 发布时间:2022-04-24 01:43

我来回答

2个回答

热心网友 时间:2022-05-01 19:41

写触发器当然会用到这两个表,它们存放的是你刚刚进行操作后的数据,可以根据临时表里的数据来编写将要触发的动作
比如删除表中id=1的数据时触发,判断deleted里是否存在id=1,如果存在,则print‘不能删除id=1的记录’,回滚。这样就可以保证id=1这条记录永远不会被误删

热心网友 时间:2022-05-01 20:59

create table student --建立student表
(student_name char(24) null,
age int null)
go
create table student_insert
(insert_count int NULL) --建立表student_insert。用于记录student表发生insert的次数
go
create table count_age --建立表count_age。用于统计student表中各个年龄学生的数量
(age int null,
[count] int not null)
go

create trigger insert_count on student
after insert
as
begin
DECLARE @a int
set @a = (select count(*) from student_insert) --触发程序自动更新student表插入动作的次数。此行为不需要用到inserted表
if @a >0
begin
update student_insert set insert_count = insert_count + 1
end
else
begin
insert student_insert values(1)
end
end

go
create trigger age_count on student
after insert
as
begin
declare @age int
declare @count int
select @age = age from inserted --触发程序自动更新相同年纪的数量。此行为需使用inserted表中的age字段
set @count = (select count(*) from insert_count where age = @age)
if @count > 0
begin
update insert_count set [count] = [count] + 1 where age = @age
end
else
begin
insert into insert_count values(@age,1)
end
end
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...Exception EoleSysError in module PlayGame.exe at 000AAA95,怎么... ...出现Exception EOleSysError in module ATT.exe at 000BCA21.拒绝... 求大神帮忙: Exception EOleSysError in module.1.多元函数概念(1... windows7ExceptionEOlesysErrorinmoduleexeat000649E0找不到指定模块... 南京新街口适合情侣吃饭的地方,南京钟山景区露台酒店价格 c语言中如何计算a+ b的和 题目:有用户输入两个整数a,b 求a和b之间的数的累加和,包括a和b 用C语... 有请高手解答,平手盘是什么意思,我认为打平多 平手盘什么意思平手盘指的是什么 食品添加剂安全使用指南目录 请问SQL触发器用在什么地方? ...求解... 谁能告诉我sql 的触发器到底能干什么?我看教程的看晕了,谁能用通俗点... SQL触发器写法 请问sql触发器insert触发器如何使用? SQL触发器的语法 wind10打印机共享怎么设置 一台电脑如何配置内网和外网wind10 win10怎么在“此电脑”添加新的文件夹 wind10 我的电脑怎么显示出来 自己的wind10笔记本如何在办公室连上有线打印机? 有谁知道怎么把两台Wind10家庭版系统的电脑连接到一台打印机上? 霍山石斛怎么吃?多少钱一斤 霍山枫斗米斛怎么吃? 九斛之尊霍山石斛鲜条怎么吃? 支付宝芝麻信用分达到650分怎么用 怎么才能增加芝麻信用度? 芝麻分600到650要多久 我想学厨师,家常菜的那种,应该去哪学? 芝麻信用 差22分上650,怎么提升?以及为什么借呗开不了?个人信息都填好了啊 芝麻信用分650难达到吗 sql server 触发器 中 for 怎么使用 请教如何使用SQL的触发器 数据库是MSSQLSERVER (1)使用SQL语句创建触发器 SQL Server数据库中的游标和触发器有哪些作用,什么情况下可以使用触发... sql里,instead of触发器是什么意思,如何使用? 如何在C#中使用带有 触发器 的SQL语句 sql中的触发器该不该使用? 录屏大师录完的视频怎么分享给QQ好友? 录屏大师怎么分享给qq好友 录屏大师录完的视频怎么才能分享给其他人啊? ARN9嵌入式系统设计与开发应用目录的介绍 录屏大师的视频怎么发给微信好友? arm9嵌入式开发板能实现哪些功能 什么录屏软件可以分享给qq好友 ARM9嵌入式开发平台是做什么用的? 嵌入式应用开发入门,ARM9,应用软件开发,opengl es 王者荣耀保存了视频,本地回放怎么分享给QQ好友啊 ARM9嵌入式系统设计基础教程的介绍 ARM9嵌入式系统设计的编辑推荐 电脑上的视频怎么分享给QQ好友,