2015-02-27 3 views
0

У меня возникла ошибка при создании процедуры в db2.Ошибка при создании процедуры в db2

Ошибка - Ожидаемые маркеры могут включать в себя: psm_semicolon .. SQLCODE = -104

Помощь меня ....

CREATE PROCEDURE update_new() 
LANGUAGE SQL 
BEGIN 
CREATE TABLE TEMP(METADATA_KEY varchar(40),NEW_METADATA_KEY varchar(40)); 
END; 

ответ

1

В любой инструмент вы используете, изменить заявление терминатор к чему-то кроме точки с запятой, и положить этот терминатор в конце инструкции CREATE PROCEDURE.

Например, если с помощью процессора командной строки, сохраните это в файл (обратите внимание на символ «@» в конце:

CREATE PROCEDURE update_new() 
LANGUAGE SQL 
BEGIN 
CREATE TABLE TEMP(METADATA_KEY varchar(40),NEW_METADATA_KEY varchar(40)); 
[email protected] 

затем выполнить файл: db2 [email protected] -f myproc.sql

Причина это означает, что точки с запятой всегда используются в качестве терминаторов в пределах кода процедуры, поэтому вы должны использовать что-то еще для завершения инструкции CREATE PROCEDURE.