Oracle上的清理失败

时间:2015-02-05 08:34:11

标签: oracle flyway

当我对Oracle数据库运行clean命令时,我收到此错误。

Caused by: java.sql.SQLException: ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'DROP_JOB'
ORA-06550: line 1, column 7: PL/SQL: Statement ignored

我正在使用Oracle 10.2.0.4.0和Flyway 3.1

修改

我使用的是遗留数据库。

首先我跑

flyway baseline -Dflyway.baselineVersion=1 -Dflyway.baselineDescription="Base version"

然后我添加了这个脚本

CREATE TABLE "SMTAPP"."EC_KODY_VYKONU"
(
    "ID" NUMBER(9, 0) NOT NULL, 
    "NAZOV" NVARCHAR2(50) NOT NULL 
);

CREATE TABLE "SMTAPP"."EC_MATERIALY"
(
    "ID" NUMBER(9, 0) NOT NULL, 
    "NAZOV" NVARCHAR2(50) NOT NULL, 
    "IS_ROZTOK" NUMBER(1, 0) NOT NULL 
);

CREATE SEQUENCE "SMTAPP"."EC_KODY_VYKONU_SEQ" INCREMENT BY 1 START WITH 1 NOMAXVALUE NOCYCLE;

ALTER TABLE "SMTAPP"."EC_KODY_VYKONU"
    ADD CONSTRAINT "PK_52eece2411997559a4bb900877d" PRIMARY KEY
    ( 
        "ID" 
    );

ALTER TABLE "SMTAPP"."EC_MATERIALY"
    ADD CONSTRAINT "PK_86fb16745239d69a3bd73a82d1a" PRIMARY KEY
    ( 
        "ID" 
    );

然后我跑

flyway migrate

现在当我运行clean命令时会弹出错误。

2 个答案:

答案 0 :(得分:0)

最有可能在您调用DROP_JOB的一个脚本中,您所拥有的参数少于错误所需的参数。

像:

DROP_JOB(VARCHAR2 p_param)
... procedure body

被称为

DROP_JOB(param1, param2);

DROP_JOB();

要做的事:
  - 更正脚本
  - 进行飞路维修   - 运行迁移

答案 1 :(得分:0)

这听起来像个错误。请在Flyway Issue Tracker中提交问题。