自定义函数不能赋值,该如何解决
自定义函数不能赋值
SELECT @ID=ID FROM ReplenishItem WHERE (PromotorPackNo = @PromotorPackNo) AND (ReplenishmentID = @ReplenishID)
这句话中不能给@ID赋值,请问各位大侠,为什么呢?
------解决方案--------------------
SELECT @ID=ID FROM ReplenishItem WHERE (PromotorPackNo = @PromotorPackNo) AND (ReplenishmentID = @ReplenishID)
这句之前你定义了@id这个变量没有?
------解决方案--------------------
函数是对的吧
SELECT ID FROM ReplenishItem WHERE (PromotorPackNo = @PromotorPackNo) AND (ReplenishmentID = @ReplenishID)
这条语句能查询到数据么?
ALTER FUNCTION IsPackInReplenish
(
@PromotorPackNo varchar(32),
@ReplenishID int
)
RETURNS BIT
AS
BEGIN
--DECLARE @PromotorPackNo varchar(32)
--DECLARE @ReplenishID int
--SELECT @PromotorPackNo='YP201401130000'
--SELECT @ReplenishID = 7
DECLARE @Result bit
-- 查找添补明细表中分包是否存在
DECLARE @ID int
SELECT @ID=ID FROM ReplenishItem WHERE (PromotorPackNo = @PromotorPackNo) AND (ReplenishmentID = @ReplenishID)
IF @ID>0
BEGIN
SET @Result = 1
END
ELSE
BEGIN
SET @Result = 0
END
RETURN @Result
END
SELECT @ID=ID FROM ReplenishItem WHERE (PromotorPackNo = @PromotorPackNo) AND (ReplenishmentID = @ReplenishID)
这句话中不能给@ID赋值,请问各位大侠,为什么呢?
------解决方案--------------------
SELECT @ID=ID FROM ReplenishItem WHERE (PromotorPackNo = @PromotorPackNo) AND (ReplenishmentID = @ReplenishID)
这句之前你定义了@id这个变量没有?
------解决方案--------------------
函数是对的吧
SELECT ID FROM ReplenishItem WHERE (PromotorPackNo = @PromotorPackNo) AND (ReplenishmentID = @ReplenishID)
这条语句能查询到数据么?