有人可以帮我修复该代码。它不在 PL/SQL (SQLPLUS @script.sql) 上运行,给出 SP2-0552:未声明绑定变量“NEW”。
脚本.SQL
  prompt Creating Table SYSTEMDATALOG;
declare 
    counter1 integer;
    counter2 integer;
begin
    SELECT COUNT(*) INTO counter1 FROM ALL_TABLES WHERE TABLE_NAME='SYSTEMDATALOG' AND OWNER='MZMESDB';
    if counter1 = 1 then 
        DROP TABLE SYSTEMDATALOG;
    end if;
    SELECT COUNT(*) INTO counter2 FROM ALL_SEQUENCES WHERE SEQUENCE NAME='SEQSYSTEMDATALOG';
    if counter2 = 1 then 
        DROP SEQUENCE SEQSYSTEMDATALOGID;
    endif;
    CREATE TABLE "MZMESDB"."SYSTEMDATALOG" ( "ID" INTEGER NOT NULL , 
                         "DATETIME" DATE NOT NULL , 
                         "TYPE" VARCHAR2(64) NOT NULL, 
                         "SEVERITY" INTEGER NOT NULL,
                         "SOURCE" VARCHAR2(64) NOT NULL, 
                         "USER" VARCHAR2(64) NOT NULL,
                         "MESSAGE" VARCHAR2(1024), PRIMARY KEY ("ID") VALIDATE );
    CREATE SEQUENCE SEQSYSTEMDATALOGID;
    CREATE OR REPLACE TRIGGER TRIGSYSTEMDATALOGID
        BEFORE INSERT ON SYSTEMDATALOG
        FOR EACH ROW
            BEGIN
                SELECT SEQSYSTEMDATALOGID.NEXTVAL INTO :NEW.ID FROM DUAL;
            END TRIGSYSTEMDATALOGID;
end;
/
提前感谢您的任何帮助。
[权威代码]
提示创建表SYSTEMDATALOG;
声明 counter1 整数;counter2 整数;
开始 SELECT COUNT(*) INTO counter1 FROM ALL_TABLES WHERE TABLE_NAME='SYSTEMDATALOG' AND OWNER='MZMESDB';
if counter1 = 1 then 
    execute immediate 'DROP TABLE SYSTEMDATALOG';
end if;
SELECT COUNT(*) INTO counter2 FROM ALL_SEQUENCES WHERE SEQUENCE_NAME='SEQSYSTEMDATALOG';
IF counter2 = 1 then
    execute immediate 'DROP SEQUENCE SEQSYSTEMDATALOGID';
END IF;
execute immediate 'CREATE TABLE "MZMESDB"."SYSTEMDATALOG" ( 
                    "ID" INTEGER NOT NULL , 
                    "DATETIME" DATE NOT NULL , 
                    "TYPE" VARCHAR2(64) NOT NULL, 
                    "SEVERITY" INTEGER NOT NULL,
                    "SOURCE" VARCHAR2(64) NOT NULL, 
                    "USER" VARCHAR2(64) NOT NULL,
                    "MESSAGE" VARCHAR2(1024), PRIMARY KEY ("ID") VALIDATE )';
execute immediate 'CREATE SEQUENCE SEQSYSTEMDATALOGID';
execute immediate 'CREATE OR REPLACE TRIGGER TRIGSYSTEMDATALOGID
           BEFORE INSERT ON SYSTEMDATALOG
           FOR EACH ROW
           BEGIN
            SELECT SEQSYSTEMDATALOGID.NEXTVAL INTO :NEW.ID FROM DUAL;
           END TRIGSYSTEMDATALOGID;';
结尾;