2010-07-12 6 views
0

Что я упускаю в этом коде ниже, что приведет к ошибке:SQL SQL DB2 ошибка НЕПРАВИЛЬНЫЙ СИНТАКСИС

Msg 170, level 15, line 113 line 113: Incorrect syntax near 'actual_completion_date'.

update #Loss_mit_step 
set 
[STEP924_COMPL_DATE] = Case when step_code ='924' then ls_actual_completion_date else ' ' end, 
[STEP926_COMPL_DATE] = Case when step_code ='926' then ls_actual_completion_date else ' ' end, 
[STEP927_COMPL_DATE] = Case when step_code ='927' then ls_actual_completion_date else ' ' end, 
[STEP928_COMPL_DATE] = Case when step_code ='928' then ls_actual_completion_date else ' ' end, 
[APPROVAL_DATE] = Case when step_code ='Q28' then ls_actual_completion_date else ' ' end 
+0

Отформатируйте свой код. Выберите его в редакторе и нажмите Control-K. –

+0

@marc: это было мое редактирование. Я предположил, что это было похоже на его предыдущие вопросы, где он использует связанный с DB2 сервер. Может быть, это чистый T-SQL? –

ответ

2

Вы, кажется, есть лишняя запятая в заявлении, в самом конце.


Я предлагаю вам закомментировать каждый из «дела» линии, один за другим, пока вы не выяснить, в чем проблема, или до тех пор, пока есть только одна линия слева.

+0

+1, что я только что набрал! –

+0

удалил последнюю запятую, все еще получите ошибку ??? – JMS49

0

Я нашел причину ошибки: пространство перед actual_completion_date в первой строке.

+1

Вы отредактировали, чтобы удалить конечную запятую, которую отметил Джон Сондерс. Во всяком случае, я не вижу места выше ... – gbn

+1

В следующий раз, разместите весь запрос, крошечный фрагмент, который вы разместили, не был тем, что вы исправили, в нем нет места. –

2

То, что вы разместили, является синтаксически правильным, поэтому вы не можете получить синтаксическую ошибку. Он отлично разбирается. В сообщении об ошибке упоминается actual_completion_date, но у вас нет такого токена в вашем сообщении. Поэтому, очевидно, вы отправили сообщение об ошибке из другого T-SQL.

Смежные вопросы