Tốt nhất là chúng ta nên duy trì lược đồ của mình đúng cách, sử dụng các phương pháp hay nhất về quản lý cấu hình và kiểm soát nguồn. Trong trường hợp này, chúng ta biết trước liệu lược đồ mà chúng ta chạy các tập lệnh của chúng ta có chứa các bảng đó hay không. Chúng tôi không gặp lỗi vì chúng tôi không cố gắng loại bỏ các bảng không tồn tại.
Tuy nhiên không phải lúc nào bạn cũng có thể làm được điều này. Một cách tiếp cận thay thế là có hai tập lệnh. Tập lệnh đầu tiên chỉ có các câu lệnh DROP TABLE, được mở đầu bằng một
thân thiệnPROMPT It is safe to ignore any ORA-00942 errors in the following statements
Tập lệnh thứ hai có tất cả các câu lệnh CREATE TABLE và dẫn đầu bằng
PROMPT All the statements in this script should succeed. So investigate any errors
Một tùy chọn khác là sử dụng từ điển dữ liệu:
begin
for r in ( select table_name from user_tables )
loop
execute immediate 'drop table '||r.table_name
||' cascade constraints';
end loop;
end;
Hãy cẩn thận với điều này. Nó là tùy chọn hạt nhân và sẽ loại bỏ mọi bảng trong lược đồ của bạn.