何らかの理由で、「単語「DECLARE」の近くの構文が正しくありません」というエラーが表示され続けます。エラーがスローされないようにするには、変数をどこで宣言する必要がありますか? 「WITH AS」ステートメントを使用して変数を宣言しようとしている人を見つけられなかったため、これを理解できませんでした。
CREATE PROCEDURE qryKeysValues(@KeyValue varchar(5))
    AS
    BEGIN
    WITH tbl1 AS    
        (SELECT * FROM FN_qryMethods())
    DECLARE @SQL varchar(1500)
    SET @SQL = 'SELECT ' + @KeyValue+ ' AS fldCode, tbl' +@KeyValue+ 'Key.fldID, tbl1.fldID
               FROM tbl' + @KeyValue + 'Key', tbl1
        EXEC(@SQL)
    END;