CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

一个关于触发器的问题?(菜鸟问题)

楼主jerbee(波波)2002-05-25 20:51:58 在 MS-SQL Server / 基础类 提问

三个表A(BIllNo,Goods,Qty),B(Goods,Qty),C  
  在向A中插入记录时触发,同时将该记录插入B中  
  条件是:  
      1:if   插入的Goods在B中已经存在,则B中的Qty=inserted.Qty+B.qty  
      2:if   插入的Goods在B中不存在,则在B中插入一条新的记录  
  我该怎么写?  
  谢谢各位老大的帮忙!  
   
  问题点数:20、回复次数:3Top

1 楼OpenVMS(半知半解)回复于 2002-05-25 21:19:58 得分 7

IF   EXISTS   (SELECT   name   FROM   sysobjects  
              WHERE   name   =   'mytrigger'   AND   type   =   'TR')  
        DROP   TRIGGER   mytrigger  
  GO  
  CREATE   TRIGGER   mytrigger  
  ON   A  
  FOR   INSERT    
  AS    
   
  IF   inserted.Goods   IN   (select   Goods   from   B)  
  update   table   B  
      set   Qty=inserted.Qty+Qty  
      where   Goods=inserted.Goods  
  ELSE  
    insert   into   B(Goods,Qty)  
    select   Goods,Qty   from   inserted  
   
  GO  
   
  Top

2 楼hycao(海草)回复于 2002-05-25 21:48:52 得分 6

CREATE   TRIGGER   mytrigger   ON   [A]    
  FOR   INSERT  
  AS  
   
  IF   NOT   EXISTS(SELECT   *   FROM   B   INNER   JOIN   INSERTED   i   ON   i.Goods   =   B.Goods)  
  INSERT   INTO   B(Goods,   Qty)   SELECT   Goods,   Qty   FROM   INSERTED  
  ELSE  
  UPDATE   B   SET   Qty   =   B.Qty   +   i.Qty   FROM   INSERTED   i   INNER   JOIN   B   ON   i.Goods   =   B.GoodsTop

3 楼lyqof908(我思固我在)回复于 2002-05-25 22:45:31 得分 7

已给你发消息,请查收。Top

相关问题

  • 菜鸟问题:如何写触发器
  • 菜鸟问题,触发器的问题
  • 菜鸟求教一触发器
  • 问一个有关ORACLE触发器的菜鸟问题!
  • 小弟是菜鸟,请教触发器的问题....
  • 关于删除触发器的菜鸟问题
  • 触发器导致表死锁的菜鸟级问题。
  • 一个菜鸟有关触发器的问题?
  • 菜鸟问个触发器的问题,急~在线等!!
  • 菜鸟求救,一简单触发器问题

关键词

  • qty
  • goods
  • 插入
  • inserted
  • 记录
  • trigger
  • select

得分解答快速导航

  • 帖主:jerbee
  • OpenVMS
  • hycao
  • lyqof908

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo