两个表,一个时“账户信息表”(字段:卡号、姓名、开户行),其中,卡号设置了主键,只能唯一;
另一个表时“交易明细表”(字段:交易卡号、 交易方姓名 、交易时间 、交易金额、对手卡号、对手名称)
如何用触发器,在添加交易明细时候,自动将交易卡号和交易对手卡号及交易双方姓名增加在账户信息表的卡号字段/姓名字段里,已存在的不添加。
sql server 触发器的应用
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
一把编程的菜刀 2022-06-02 09:55关注获得2.70元问题酬金 CREATE trigger 触发器名 on [交易明细表] FOR INSERT as begin -- 交易方卡号 DECLARE @id varchar(20) -- 交易方姓名 DECLARE @name varchar(20) -- 交易对手卡号 DECLARE @ids varchar(20) -- 交易对手姓名 DECLARE @names varchar(20) -- 在inserted表中查询已经插入记录信息 select @id = 交易卡号, @name = 交易方姓名,@ids = 对手卡号, @names = 对手姓名 from inserted; -- 在户信息表表中查询交易卡号是否存在,不存在就插入 IF NOT exists(SELECT * FROM 账户信息表 WHERE 卡号=@id) insert into 账户信息表(卡号,姓名)values(@id,@name); -- 在户信息表表中查询交易对手卡号是否存在,不存在就插入 IF NOT exists(SELECT * FROM 账户信息表 WHERE 卡号=@ids) insert into 账户信息表(卡号,姓名)values(@ids,@names); end评论 打赏 举报 编辑记录解决 1无用