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

2 cách liệt kê tất cả các trình kích hoạt trong cơ sở dữ liệu PostgreSQL

Đây là hai tùy chọn để liệt kê các trình kích hoạt trong cơ sở dữ liệu PostgreSQL.

information_schema.triggers Xem

Dạng xem này chứa tất cả các hàm và thủ tục trong cơ sở dữ liệu hiện tại mà người dùng hiện tại sở hữu hoặc có một số đặc quyền ngoài SELECT trên.

Dưới đây là một ví dụ về việc trả về danh sách các trình kích hoạt:

SELECT
    trigger_schema,
    trigger_name,
    event_object_table
FROM 
    information_schema.triggers
ORDER BY 
    event_object_table;

Kết quả ví dụ:

+----------------+-----------------------+--------------------+
| trigger_schema |     trigger_name      | event_object_table |
+----------------+-----------------------+--------------------+
| public         | last_updated          | actor              |
| public         | last_updated          | address            |
| public         | last_updated          | category           |
| public         | last_updated          | city               |
| public         | last_updated          | country            |
| public         | last_updated          | customer           |
| public         | film_fulltext_trigger | film               |
| public         | film_fulltext_trigger | film               |
| public         | last_updated          | film               |
| public         | last_updated          | film_actor         |
| public         | last_updated          | film_category      |
| public         | last_updated          | inventory          |
| public         | last_updated          | language           |
| public         | last_updated          | rental             |
| public         | last_updated          | staff              |
| public         | last_updated          | store              |
+----------------+-----------------------+--------------------+

Vui lòng bao gồm nhiều cột hơn theo yêu cầu. Ví dụ:bạn có thể bao gồm action_statement để bao gồm định nghĩa của trình kích hoạt.

pg_trigger Danh mục

pg_catalog.pg_trigger cửa hàng danh mục kích hoạt trên bảng và dạng xem.

Dưới đây là một ví dụ về mã trả về danh sách các trình kích hoạt và bảng của chúng:

SELECT 
    tgname AS trigger_name,
    tgrelid::regclass AS table_name
FROM 
    pg_trigger
ORDER BY 
    table_name,
    trigger_name;

Điều đó có thể trả về khá nhiều trình kích hoạt, tùy thuộc vào cơ sở dữ liệu.

Chúng tôi có thể thu hẹp nó xuống chỉ những trình kích hoạt cho một bảng nhất định như sau:

SELECT 
    tgname AS trigger_name
FROM 
    pg_trigger
WHERE
    tgrelid = 'public.film'::regclass
ORDER BY
    trigger_name;

Kết quả ví dụ:

+------------------------------+
|         trigger_name         |
+------------------------------+
| RI_ConstraintTrigger_a_24890 |
| RI_ConstraintTrigger_a_24891 |
| RI_ConstraintTrigger_a_24900 |
| RI_ConstraintTrigger_a_24901 |
| RI_ConstraintTrigger_a_24915 |
| RI_ConstraintTrigger_a_24916 |
| RI_ConstraintTrigger_c_24907 |
| RI_ConstraintTrigger_c_24908 |
| RI_ConstraintTrigger_c_24912 |
| RI_ConstraintTrigger_c_24913 |
| film_fulltext_trigger        |
| last_updated                 |
+------------------------------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bí danh tham chiếu trong mệnh đề WHERE

  2. Cách kiểm tra phiên bản PostgreSQL

  3. Làm cách nào để gửi email từ trình kích hoạt PostgreSQL?

  4. Loại bỏ các thẻ HTML trong PostgreSQL

  5. PHP và Postgres:bắt lỗi?