haigerrr 2015-06-11 14:48 采纳率: 50%
浏览 1612
已采纳

sql触发器结果没有更新

create trigger tr_cost
on stu_inf
for update
as
declare @bukao int
begin

select @bukao=补考次数
from v_cost

if @bukao>=2
begin

update stu_inf

set 学习费用=学习费用 * 1.1
where 学员编号 in(select 学员编号
from stu_inf)
end
end

#

请问这个触发器为什么在表中没有显示结果,stu_inf 表中学生费用还是没有变化

  • 写回答

2条回答 默认 最新

  • danielinbiti 2015-06-11 15:15
    关注
    虽然逻辑有些不正常,但触发器应该没问题,是有反应的,
    1、看一下v_cost最后一条记录的补考次数是否是大于等于2的,也就是如果v_cost有2条记录,第一条补考次数是3,第二条记录补考次数是1,则结果@bukao的值是1
    2、触发器需要是update stu_inf表的时候才执行,insert或者delete无效。
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算