Sql ORA-06550:ORA-00942:表或视图不存在错误,当在创建它的同一脚本上引用表时

Sql ORA-06550:ORA-00942:表或视图不存在错误,当在创建它的同一脚本上引用表时,sql,oracle,plsql,toad,Sql,Oracle,Plsql,Toad,我正在尝试使用同一脚本中创建的备份表重新填充表。 但当我在Toad上运行(F5)它时,它返回一个错误(ORA-06550:第14行,第46列:ORA-00942:表或视图不存在) 下面是代码的样子: SET serveroutput ON BEGIN EXECUTE IMMEDIATE 'CREATE TABLE SAMPLE_TABLE1_BACKUP AS SELECT * FROM SAMPLE_TABLE1'; EXECUTE IMMEDIATE 'TRUNCATE

我正在尝试使用同一脚本中创建的备份表重新填充表。
但当我在Toad上运行(F5)它时,它返回一个错误(ORA-06550:第14行,第46列:ORA-00942:表或视图不存在)

下面是代码的样子:

SET serveroutput ON

BEGIN

    EXECUTE IMMEDIATE 'CREATE TABLE SAMPLE_TABLE1_BACKUP AS SELECT * FROM SAMPLE_TABLE1';

    EXECUTE IMMEDIATE 'TRUNCATE TABLE SAMPLE_TABLE1';

    BEGIN 
    FOR rec IN (SELECT * FROM SAMPLE_TABLE1_BACKUP)
        LOOP
            INSERT INTO SAMPLE_TABLE1 (column1, column2, column3)
            VALUES (rec.column1, rec.column2, rec.column3);
        END LOOP rec;
    END;
                
    EXECUTE IMMEDIATE 'DROP TABLE SAMPLE_TABLE1_BACKUP';

END; 

当然,这行不通。表在编译时不存在<代码>插入也必须是动态的。

最近几天在这个问题上似乎很忙:我很肯定我在其他论坛上也看到过。