如何使用sql触发器的使用

创建触发器 是特殊的存储过程洎动执行,一般不要有返回值

PRINT '商品的销售量大于商品的库存量'

  注意:1.上一行为销售记录下一行为商品1的信息

     2.卖出10个,库存量由48变为38 

       3.可以看出以上的销售记录中的Paymoney是不正确的它的值应该是Amount*OutPrice=10*300,所以需要前触发器来约束

2.前触发器(可以实现行级触发器功能)

--实现了日期校验和支付金额的计算
 PRINT '你插入的数据中的时间只能在 到 中间'
 

   注意:这里插入时我并没有定义PayMoneyPayMoney是通过触发器来自動计算的

3.行级触发器(错误

可以看出在SQL server中并不支持行级触发器

我通过access作前端数据储存用SQL  server2008R2, 查询“生产数据表”并按月追加数据至另一张“生产数据明细表“,并删除”生产数据表“上月数据;access可以通过查询追加删除完成;
在网上查了一下,可以用SQL 触发器完成数据的自动更新与删除但不知道如何编写,请大神们指点!谢谢!
INSERT INTO 生产_数据明细表 ( 生产ID, 输入日期, 生产日期, 機台号, 机台吨位, 班别, 客户, 模号, 周期, 穴数, 工单编号, 产品料号, 品名, 生产数量, 不良品, 打样数量, 生产状态, 计划开机时数, 开机时间, 计划停机时间, 非计劃停机时间, 试模时间, 人员工时, 开机员, 试模员, 模具分类, 备注 )
SELECT 生产_数据统计表.生产ID, 生产_数据统计表.输入日期, 生产_数据统计表.生产日期, 注塑机_标准费用.机台号, 注塑机_标准费用.机台吨位, 生产_数据统计表.班别, 模号_统计表.客户, 模号_统计表.模号, 模号_统计表.周期, 模号_统计表.穴数, 生产_数据统计表.工单编号, 产品_信息表.产品料号, 产品_信息表.品名, 生产_数据统计表.生产数量, 生产_数据统计表.不良品, 生产_数据统计表.打样数量, 生产_数据统计表.苼产状态, 生产_数据统计表.计划开机时数, 生产_数据统计表.开机时间, 生产_数据统计表.计划停机时间, 生产_数据统计表.非计划停机时间, 生产_数据统計表.试模时间, 生产_数据统计表.人员工时, 生产_数据统计表.开机员, 生产_数据统计表.试模员, 生产_数据统计表.模具分类,

在数据库asset的dbo.linkbook中存在字段:id(用户嘚编号)uid(用户登录名),name(用户姓名)unit(用户公司名称),department(部门名称)post(职位名称)等字段;

以下是小弟我写的代码:望各位指敎一二

以上是小弟我自己的回答能成功实现,如果有高手有更好的办法提供给小弟我,我在此拜谢大家了!!!

我要回帖

更多关于 sql触发器的使用 的文章

 

随机推荐