DECLARE @myTemp TABLE (Item Varchar(10) Not Null,
[Description Varchar(30) Not Null,
LonDescription Varchar(50),
[Level] Char(1),
LevelDesc Varchar(15),
GID Varchar(16),
[Min] Int,
[Max] Int,
QTY Int,
QoO Int)
FETCH NEXT FROM cAreaLocationItems Into @citem,@cDesc,@cLDesc,@cLVL,@cLVLDesc,@cGID,@cMin,@cMax,@cqty
IF @@FETCH_STATUS <> 0 -- We're out of items
BREAK
WHILE @@FETCH_STATUS = 0
Begin
Declare @QoO Int
SELECT @QoO = SUM(QtyReqd - QtyActual)
FROM abc.tblorders
WHERE (ItemNumber = @cItem) AND (Status <> '4') And
Bin = @Location
GROUP BY ItemNumber, UPC, [Level], Description, Bin
If @QoO = Null
Set @QoO = 0
Insert into @myTemp values(@cItem,@cDesc,@cLDesc,@clvl,@cLVLDesc,@cGid,@cMin,@cMax,@cQTy,@QoO)
FETCH NEXT FROM cAreaLocationItems Into @citem,@cDesc,@cLDesc,@cLVL,@cLVLDesc,@cGID,@cMin,@cMax,@cqty
end
将插入的错误执行存储过程获取到上面定义的@myTemp表变量中。表示10列,插入有10个值。有什么帮助吗?
答案 0 :(得分:1)
尝试在插入查询中指定列名,如下所示:
Insert into @myTemp (Item Varchar,[Description,LonDescription,Level],LevelDesc,GID,[Min],[Max],QTY,QoO) values(@cItem,@cDesc,@cLDesc,@clvl,@cLVLDesc,@cGid,@cMin,@cMax,@cQTy,@QoO)
它可以帮助您在向表中添加新列时避免错误