触发器问题

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值