2013-08-13 3 views
0

следующие результаты запроса в ошибке со следующим сообщением:Sql Server Cursor ошибки (неправильный синтаксис около «а» знак)

Неправильный синтаксис около ключевого слова «для». Как я должен получить эту ошибку ...

Я думаю, что в запросе ниже SQL Server не нравится знак «@» .....

Любые мысли? Благодаря!!!

Declare ObsSet_Cursor for 
Select o.EventSetName, 
     o.EventSetDisplay, 
     o.EventSetDescription, 
     o.ChildSetName 
    From ##Final f, 
     ##ObsSetLevel o 
    Where f.ChildSetName = o.EventSetName and 
     f.ChildSetName = @str 
+0

ОК, этот код имеет так много SQL antipatterns. Во-первых, не используйте курсоры, если существует альтернатива на основе набора, которую они выполняют более 90% времени. Далее, неявные объединения очень плохие, и нет никакой необходимости писать их inteh 21-го века. Наконец, глобальные таблицы temp могут создавать проблемы, поскольку они видны другим сидениям (а не только тем, которые вы намеревались). Не используйте их, если у вас нет другого выбора. – HLGEM

ответ

1

Вы пропустили cursor ключевое слово:

Declare ObsSet_Cursor cursor for ... 
Смежные вопросы