需要一些存储过程的错误帮助

需要一些存储过程的错误帮助

问题描述:

可能重复:结果
  需要一些存储过程PLZ

错误: -

这赋值给变量的SELECT语句不能与数据检索操作结合起来。

A SELECT statement that assigns a value to a variable must not be combined with data-retrieval operations.

你所得到的错误是,你的选择是更新的变量,而在同一时间随地吐痰的resutls。
拆分查询如下:

The error you are getting is that your select is updating a variable while spitting out the resutls at the same time. Split up your queries as follows:

 ALTER PROC [Admin].[sp_Ques]    
    (
        @QuesID bigint
     )

    AS
    BEGIN
DECLARE @Lang int   -- ERROR HERE

        IF @QuesID = 0
            SET @QuesID =NULL
    SELECT TOP 1 @Lang=FQ.AdminLanguageID
    FROM         Admin.Ques FQ
    LEFT OUTER JOIN Admin.QuesTypes FQT ON FQT.QuesTypeID=FQ.QuesTypeID
    WHERE   FQ.QuesID = Coalesce(@QuesID,QuesID)

    SELECT TOP 1 FQ.QuesID, FQ.Ques,QuesAns as QuesAns,FQ.QuesAns[Answers], FQT.QuesType ,FQ.QuesTypeID, FQ.QuesParentID, FQ.Active,FQ.AdminLanguageID
    FROM         Admin.Ques FQ
    LEFT OUTER JOIN Admin.QuesTypes FQT ON FQT.QuesTypeID=FQ.QuesTypeID
    WHERE   FQ.QuesID = Coalesce(@QuesID,QuesID)

    SELECT TelerikLanguage FROM Admin.Language 
    WHERE AdminLanguageID=@Lang 
    END