我对飞路升级有一个奇怪的问题。我有这样的升级脚本:
CREATE OR REPLACE PROCEDURE DBO.initData()
LANGUAGE SQL
BEGIN
CALL DBO.myProc(1);
CALL DBO.myProc(2);
CALL DBO.myProc(3);
CALL DBO.myProc(4);
CALL DBO.myProc(5);
CALL DBO.myProc(6);
......
CALL DBO.myProc(31);
END;
当我在Data Studio中运行它时,一切都很好。但如果我把它放在飞路升级中。它返回语法错误。经过一番调查,我发现飞路增加了一个“;”在我的上一个陈述中,并使其像CALL DBO.myProc(3;2);
现在我必须制作两个存储过程才能使其正常工作:
INIT1:
CREATE OR REPLACE PROCEDURE DBO.initData()
LANGUAGE SQL
BEGIN
CALL DBO.myProc(1);
CALL DBO.myProc(2);
CALL DBO.myProc(3);
CALL DBO.myProc(4);
CALL DBO.myProc(5);
CALL DBO.myProc(6);
......
CALL DBO.myProc(31);
END;
INIT2:
CREATE OR REPLACE PROCEDURE DBO.initData2()
LANGUAGE SQL
BEGIN
CALL DBO.myProc(32);
END;
我想知道是否有人知道这里有什么问题?
重现剧本:
CREATE OR REPLACE PROCEDURE DBO.wp_InitDataProc(
v_Name VARGRAPHIC(255)
)
LANGUAGE SQL
BEGIN
/*do nothing*/
END;
CREATE OR REPLACE PROCEDURE DBO.wp_InitData()
LANGUAGE SQL
BEGIN
CALL DBO.wp_InitDataProc(N'1');
CALL DBO.wp_InitDataProc(N'1');
CALL DBO.wp_InitDataProc(N'2');
END;
CALL DBO.wp_InitData();
DROP PROCEDURE DBO.wp_InitData;
DROP PROCEDURE DBO.wp_InitDataProc;