CREATE PROCEDURE AddStock
@编号 CHAR(10),
@入库数量 AS INT
AS
update 库存表 set 库存量=库存量+@入库数量 where 编号=@编号
@编号 CHAR(10),
@入库数量 AS INT
AS
update 库存表 set 库存量=库存量+@入库数量 where 编号=@编号
解决方案 »
- 触发器如何得知是哪条记录的改动调用了它?
- 自学考试上机考试样题疑惑
- SQL Server 错误20736 待高手
- 数据表有一个时间字段如2005-11-30,请问怎样分别查询当天的、昨天的、一周以来的记录,谢谢
- SQL查询过滤一个问题,会的请答一下
- 关于在SQL语句中no lock的指定
- 怎样用数据库[MS SQL]做成一个树结构?语言是C#
- 一个小问题,用like '%jone%'这样查速度很慢,是不是建索引没用呢?
- 关于存储图片的问题!
- 請問在sql server2000存儲過程的屬性窗口怎樣設置一個TAB鍵的大小(空格數),注意:不是在查詢分析器中。
- 如何将SQL Server 6.5装在一台没有连接网线的笔记本电脑上
- 小问题,请指教
@编号 CHAR(2),
@入库数量 AS INT
@不合格数 AS INT
AS
exec 'update 库存表 set 库存量=库存量+'@入库数量+',不合格数=不合格数+'+@不合格数+' where 编号='''+@编号+''''
@a varchar(10),
@b int,
@c int
as
insert 入库表 (编号,入库数量,不合格数) values(@a,@b,@c)
update 库存表 set 库存数量=库存数量+@b,不合格数=不合格数+@c where 编号=@a
go
FOR INSERT
AS
update 库存表 set 库存数量=库存表.库存数量+inserted.入库数量,不合格数=库存表.不合格数+inserted.不合格数 from inserted where 库存表.编号=inserted.编号
go
create proc P_Test
@Bh varchar(10)
as
update b set b.库存数量=ISNULL(b.库存数量,0)+a.入库数量,
b.不合格数=ISNULL(b.不合格数,0)+a.不合格数
from 入库单表 a inner join 库存表 b on a.编号= b.编号 where a.编号 =@Bh
go
CREATE TRIGGER 名1 ON 入库单表
FOR INSERT
AS
update b set b.库存数量=ISNULL(b.库存数量,0)+a.入库数量,
b.不合格数=ISNULL(b.不合格数,0)+a.不合格数
from inserted a inner join 库存表 b on a.编号= b.编号
go
触发器是一种特殊的存储过程,在用户试图对指定的表执行指定的数据修改语句时自动执行。Microsoft® SQL Server™ 允许为任何给定的 INSERT、UPDATE 或 DELETE 语句创建多个触发器。