ALTER PROCEDURE dbo.uspGetCompanyInfor

(
@PKID INT
)

AS
DECLARE @sql NVARCHAR(4000)
SET @sql='
SELECT City,CompanyName,LinkPhone,DetailAddress
FROM TransFerMgt_CompanyInfor WHERE PKID='+CAST(@PKID AS VARCHAR(10))
EXEC @sql
执行的时候 输入1 提示的是 找不到存储过程 '
SELECT City,CompanyName,LinkPhone,DetailAddress
FROM TransFerMgt_CompanyInfor WHERE PKID=1'
这个存储 写的有问题么 

解决方案 »

  1.   

    EXEC(@sql) 不括起来表示存储过程名
      

  2.   

    ALTER PROCEDURE dbo.uspGetCompanyInfor
        
        (
        @PKID INT
        )
        
    AS
    DECLARE @sql NVARCHAR(4000)
        SET @sql='
                SELECT City,CompanyName,LinkPhone,DetailAddress
                FROM TransFerMgt_CompanyInfor WHERE PKID='+CAST(@PKID AS VARCHAR(10))
        EXEC (@sql)