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

找不到列 "dbo" 或用户定义的函数或聚合
SQL code
ALTER FUNCTION [dbo].[f_PCB_GetChildContractID]
(
    @ContractID INT
)
RETURNS 
@Temp TABLE 
(
    ContractID INT
)
AS
BEGIN
    DECLARE @ParentID INT
    SELECT @ParentID = ParentID FROM dbo.BS_Contract WHERE ID = @ContractID
    IF(@ParentID = 0 OR @ParentID IS NULL)
    BEGIN
        --父合同
        INSERT INTO @Temp SELECT ContractID FROM v_PCB_Planning 
        WHERE Status IN ('4', '5', '6', '7', '8') AND ParentID = @ContractID
    END
    ELSE
    BEGIN
        --其本身就是自合同
        INSERT INTO @Temp SELECT @ContractID
    END
    --返回
    RETURN
END
GO


调用:
SELECT dbo.f_PCB_GetChildContractID(18628)

报错:
找不到列 "dbo" 或用户定义的函数或聚合 "dbo.f_PCB_GetChildContractID",或者名称不明确。

------解决方案--------------------
要查看一下有没有这个函数