触发器问题

3. 课程表(course)
课程号(cno) 字符型 关于课程的编号 要求不为空,不重复
课程名(cname) 字符型 课程的名称 不可以为空
课时(chour) 整型 课时 不可以为空
公费价(cprice) 实型 课程的收费 不可以为空
简介(cmemo) 文本 课程的简单介绍 可以为空
5. 学员交费表(fare)
交费流水号(fauto) 整型 自增长 
学号(sno) 字符型 学员编号 外键和学员表对应
课程号(cno) 字符型 课程编号 外键和课程表对应
打折比率(percent) 实型 课程的打折情况 默认不打折,此字段值在0和1之间
打折原因(reason) 文本 打折的原因 说明性的介绍
实收费用(realin) 实型 此课程的实收费用 自动计算不要求录入
交费日期(in_date) 日期类型 交费的日期 默认当天
经手人(handle) 字符型 办理交费的人 由软件系统自动记载
做一个触发器当向课程表插入公费价的时候,学员交费表里的实收费用就会自动变化
比如向课程表里插入公费价为100元,学员交费表的实收价为100*percentCREATE TRIGGER aaa
ON 课程表
FOR INSERT, UPDATE
AS
/* Get the range of level for this job type from the jobs table. */
DECLARE @cprice money,
   @percent float
  
SELECT @cprice = course.cprice,
     @percent = fare.[percent] /*in sql the percent is a key*/
 
  
FROM course,fare
where course.cno = fare.cno
IF (@cprice != 0)
begin
   update fare set fare.realin = @cprice * @percent   
END
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值