ASP.NET调用存储过程后出现 列“xxx”不属于表 Table。的问题(急急急)
曾经程序猿 2009-03-02 11:06:15 孟老师 , 您好 , 有个问题要向您请教 ? 我在用asp.net + sql server 2000做完网站后在本机上测试一切都正常 , 但是程序更新到正式后经常会出现 列“xxx”不属于表 Table 或者 xxx既不是表 Table 的 DataColumn 也不是 DataRelation。 这样的问题 , 但是程序在调用存储过程的时候返回的dataset中都有这些字段 , 而且这样的问题是隔一段时间就发生。。。麻烦您帮我看看吧。。。。。谢谢了。。。
下面是我其中的一个存储过程 , 当程序调用这个存储过程后在页面中使用返回的dataset的时候就会提示 列“xxx”不属于表 Table这样的错误 :
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER PROCEDURE [dbo].[SP_GetRecommendRedemptionList]
-- Add the parameters for the stored procedure here
@LanguageCode VARCHAR(10)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @SQL VARCHAR(1000);
-- Insert statements for procedure here
Begin Try
SET @SQL = 'SELECT c.SortCode, b.[Name] as RedemptionName, b.[Title], b. [Description],
a.ID as RedemptionId, Convert(decimal(10,0), a.points) as points,
Replace(replace(a.ImageUrl, ''\'',''/''), ''~'', ''..'') as RedemptionImageUrl,
a.Quantity , CONVERT(varchar(12), a.ExpireDate, 111) as ExpireDate
FROM Redemption a
Inner Join RedemptionCategory c On a.categoryId=c.categoryId
INNER JOIN RedemptionLang b
ON a.ID=b.RedemptionID
AND a.ExpireDate>getdate() AND a.IsRecommend=1
AND b.LanguageCode = ''' + @LanguageCode + ''' Order by c.SortCode, a.SortCode, b.[name]';
EXEC(@SQL)
End Try
Begin Catch
DECLARE @ErrorMessage VARCHAR(255)
DECLARE @ErrorSeverity INT
DECLARE @ErrorState INT
SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE()
RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState)
End Catch
END