首页 > 计算机 > 计算机四级 正文

在SQL Server 2000中,有商品表(商品号,商品名,单价)和销售表(商品号,销售时间,销售价格)。现要限

时间:2021-05-04 14:16:15 解答: 201 次

在SQL Server 2000中,有商品表(商品号,商品名,单价)和销售表(商品号,销售时间,销售价格)。现要限制“销售价格”的取值必须在此商品“单价”的0.6倍到1.5倍范围之内,实现这个约束的正确代码是______。

A.CHECK(销售价格BETWEEN单价*0.6 AND单价*1.5)

B.CHECK(销售价格BETWEEN商品表.单价*0.6 AND商品表.单价*1.5)

C.CREATE TRIGGER tri_Sales ON销售表FOR INSERT,UPDATE AS IF EXISTS(SELECT*FROM INSERTED a JOIN商品表b ON a.商品号=b.商品号 WHERE销售价格NOT BETWEEN单价*0.6 AND单价*1.5) ROLLBACK

D.CREATE TRIGGER tri_Sales ON销售表INSTEAD OF INSERT,UPDATE AS IF EXISTS(SELECT*FROM INSERTED a JOIN商品表b ON a.商品号=b.商品号 WHERE销售价格NOT BETWEEN单价*0.6 AND单价*1.5) ROLLBACK

正确答案:

D解析:FOR指定触发器只有在引发的SQL语句中指定的操作都已成功执行,并且所有的约束检查也成功完成后,才执行此触发器,这种触发器称为后触发型触发器。INSTEAD OF指定执行触发器而不是执行引发触发器执行的SQL语句,从而替代触发语句的操作,称这种触发器为前触发型触发器。

请充值VIP继续使用(未注册用户支付后会自动注册登录)

×

95元 29元

VIP截止日期:2024-12-31 04:28:59

←请使用支付宝扫码支付

95元 29元

VIP截止日期:2024-12-31 04:28:59

←请使用微信扫码支付