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

Điều gì xảy ra với các trình kích hoạt phụ thuộc khi bảng bị loại bỏ?

Bảng đã bị xóa nhưng nó nằm trong thùng rác , từ đó nó có thể được khôi phục bằng cách sử dụng các lệnh hồi tưởng (flashback ... before drop ]. Tên hiển thị dưới dạng BIN$... là một chút quà tặng. Trình kích hoạt cũng hiển thị với BIN$... tên, cho biết rằng nó cũng nằm trong thùng rác và bất kỳ chỉ mục nào cũng vậy.

Bạn có thể làm trống thùng rác để loại bỏ hoàn toàn các đồ vật trong đó. Để bỏ bảng ngay lập tức mà không cần chuyển vào thùng rác, bạn có thể thêm từ khóa purge vào drop như đã giải thích trong tài liệu . Điều đó cũng sẽ làm giảm bất kỳ chỉ mục và trình kích hoạt nào ngay lập tức.

Nếu nó không được thả tự động, thì dù sao thì trình kích hoạt cũng sẽ không thể tránh được, vì bạn không thể thực hiện bất kỳ DML nào trên bảng đã thả, vì vậy nó không bao giờ có thể kích hoạt. Đó là nếu bảng mà trình kích hoạt chống lại bị bỏ. Trình kích hoạt của bạn thật kỳ lạ, nó đang chèn vào cùng một bảng. Thông thường, bạn sẽ có một trình kích hoạt trên một bảng, chèn vào bảng dự phòng của mình (tốt, cho một lần sử dụng trình kích hoạt). Trong trường hợp đó, việc bỏ bảng dự phòng sẽ làm mất hiệu lực trình kích hoạt trên bàn trực tiếp, nhưng sẽ không làm rơi nó. Chỉ thả bảng trực tiếp sẽ làm rơi trình kích hoạt trên bảng trực tiếp.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn phân cấp trong Oracle SQL:Làm phẳng hệ thống phân cấp và thực hiện tổng hợp

  2. Cách chuyển đổi hàng thành cột trong Oracle SQL

  3. Oracle sao chép dữ liệu sang một bảng khác

  4. Không thể tìm thấy oracle.ucp.jdbc.PoolDataSourceFactory trong Oracle ucp

  5. tham gia với tra cứu và theo nhóm