Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Oracle:bảng luôn tồn tại sau khi thả bảng

Ý bạn là trường hợp này?

create view t_my_table as
select 'I''m here' as txt  from dual;

drop table t_my_table;

ORA-00942: table or view does not exist

Nhưng

select * from t_my_table;

TXT     
--------
I'm here

giải pháp của nguyên nhân có lẽ nhất

select OBJECT_TYPE from user_objects where object_name = 'T_MY_TABLE';

OBJECT_TYPE        
-------------------
VIEW

Bạn đã xác định một dạng xem (hoặc loại đối tượng khác không phải BẢNG), không thể bỏ được bằng DROP TABLE , nhưng có thể được chọn .

Đăng ký đơn giản USER_OBJECTS OBJECT_TYPE . Ngoài ra, bạn có thể xem thêm SYNONYM như được đề xuất trong câu trả lời khác.

Lưu ý rằng đó không phải là MATERIALIZED VIEW như thể bạn cố gắng thả Chế độ xem được vật chất hóa bằng DROP TABLE một thông báo lỗi khác được đưa ra:

ORA-12083: must use DROP MATERIALIZED VIEW to drop T_MY_TABLE


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lỗi (ORA-00923:Không tìm thấy từ khóa FROM ở nơi mong đợi)

  2. Làm thế nào để lưu trữ các ký tự không giới hạn trong Oracle 11g?

  3. Tại sao tôi nhận được SQLSyntaxErrorException:ORA-00933:Lệnh SQL không được kết thúc đúng cách khi tôi cố gắng thực hiện truy vấn JDBC này?

  4. Kiểm tra lịch sử của nhiều bảng trong cơ sở dữ liệu

  5. Hàm HEXTORAW () hoạt động như thế nào? Thuật toán là gì?