日期:2014-05-18  浏览次数:20413 次

第一次用存储过程搞了一晚上了,大家帮帮忙
UPDATE 产品资料
SET 数量 =
  (SELECT 实际库存
  FROM 盘点商品
  WHERE 盘点单号 = '00001' AND 盘点商品.商品编号 = 产品资料.商品编号)

这段代码可以正确执行并且将盘点商品中的实际库存更新到对应的产品资料.数量中。
然后我写了个存储过程

CREATE PROCEDURE update_cpzl_setquantity_sp (@pddh [varchar]) AS UPDATE 产品资料
SET 数量 =
  (SELECT 实际库存
  FROM 盘点商品
  WHERE 盘点单号 = @pddh AND 盘点商品.商品编号 = 产品资料.商品编号)

然后执行 update_cpzl_setquantity_sp '00001' 

提示执行成功,但数量没有更新啊。代码都是一样的,想来想去没想通哪里不对了。大哥们帮忙看看。


------解决方案--------------------
@pddh varchar(50)--指定字符长度
------解决方案--------------------
不指定的情况下,字符长度为1
------解决方案--------------------
赞成楼上的。。
没有跟varchar指定长度`