Oracle - 不能改变过程
Oracle - cannot alter procedure
当 DbUp 执行以下 SQL 脚本时,我收到如下所示的错误:
CREATE OR REPLACE PROCEDURE INVOICE_DELETE
(PAR_INVOICE_ID IN NUMBER)
AS
BEGIN
DELETE FROM INVOICE_SECT_ACCOUNTING_DATA
WHERE INVOICE_ID = PAR_INVOICE_ID;
DELETE FROM INVOICE
WHERE INVOICE_ID = PAR_INVOICE_ID;
COMMIT;
END INVOICE_DELETE;
Oracle error code: 1; Number -2147467259; Message: 904
Oracle.ManagedDataAccess.Client.OracleException (0x80004005):
ORA-00904: "PAR_INVOICE_ID": niepoprawny identyfikator
DbUp-Oracle 有 2 个构建器:OracleDatabaseWithDefaultDelimiter 和 OracleDatabaseWithSemicolonDelimiter - https://github.com/DbUp/DbUp/pull/335.
我的错是因为我使用了 OracleDatabaseWithSemicolonDelimiter。所以 DbUp 将我的程序拆分成多个部分。
当 DbUp 执行以下 SQL 脚本时,我收到如下所示的错误:
CREATE OR REPLACE PROCEDURE INVOICE_DELETE
(PAR_INVOICE_ID IN NUMBER)
AS
BEGIN
DELETE FROM INVOICE_SECT_ACCOUNTING_DATA
WHERE INVOICE_ID = PAR_INVOICE_ID;
DELETE FROM INVOICE
WHERE INVOICE_ID = PAR_INVOICE_ID;
COMMIT;
END INVOICE_DELETE;
Oracle error code: 1; Number -2147467259; Message: 904
Oracle.ManagedDataAccess.Client.OracleException (0x80004005):
ORA-00904: "PAR_INVOICE_ID": niepoprawny identyfikator
DbUp-Oracle 有 2 个构建器:OracleDatabaseWithDefaultDelimiter 和 OracleDatabaseWithSemicolonDelimiter - https://github.com/DbUp/DbUp/pull/335.
我的错是因为我使用了 OracleDatabaseWithSemicolonDelimiter。所以 DbUp 将我的程序拆分成多个部分。