【SQL Server 2008】触发器案例
【SQL Server 2008】触发器案例
<1>SQL触发器
什么是触发器
触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。SQL Server 2005中触发器可以分为两类:DML触发器和DDL触发器,其中DDL触发器它们会影响多种数据定义语言语句而激发,这些语句有create、alter、drop语句。
<2>知识点分析
数据库查询
1、 分组查询:group by
2、 顺序查询:order by XX desc 降序 ;order by xx asc 升序
3、 两表进行连接:ProInfor.lid=Storehouse.proID
<3>任务实现
数据查询
SELECT name'商品名称',price'商品价格',barCode'商品条码',COUNT(*)'库存数量',MAX(addTime)'商品录入时间'
FROM ProInfor,Storehouse
WHERE ProInfor.lid=Storehouse.proID
GROUP BY name,price,barCode
ORDER BY MAX(addtime)desc;
触发器
CREATE TRIGGER TRIGGER_NAME on Storehouse for update as
Begin
Select name'商品名称',storehouseMin'货架报警数量',COUNT(*)'商品库存'
FROM ProInfor,Storehouse
WHERE ProInfor.lid=Storehouse.proID
Group by name,storehouseMin
Having storehouseMin>COUNT(*) OR storehouseMin=0
End
测试
Update storehouse set rfidID=’XXXXXXXX’ where proID=N’XXXXXXXXXXX’

浙公网安备 33010602011771号