[SQL]insert、update 表触发器应用的demo

--创建测试表
create table student
(
    stu_id int
    ,libraryCardNo varchar(10)
)

create table borrowbook
(
    b_id int
    ,libraryCardNo varchar(10)
)

GO

--插入测试数据
insert student
select 1,'221'
insert borrowbook
select 1,'221'

GO

--查询数据
SELECT * FROM  student
SELECT * FROM borrowbook 


--创建触发器<更新表>
create  trigger stu_trg
on student 
for update
as
    declare @a varchar(100)
           ,@b varchar(100)
           
           select @a=libraryCardNo ,@b=stu_id from inserted
           update borrowbook set libraryCardNo=@a where b_id=@b


GO
--创建触发器<插入表>
create trigger insert_trg
on student
for insert
as 
    declare @a varchar(100)           
           ,@b varchar(100)
           select @a=libraryCardNo ,@b=stu_id from inserted
           insert into borrowbook(b_id,libraryCardNo)values(@b,@a)
          

GO

--*********测试结果-----------------更改数据
update student set libraryCardNo='999' where stu_id=1
insert into student(stu_id,libraryCardNo)values(3,'3000')
--结果对比
select * from student 
select * from borrowbook 
posted @   感生  阅读(5002)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示