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

Áp dụng một quy trình kích hoạt duy nhất cho nhiều bảng khác nhau

Bạn có thể tìm thấy ví dụ về cách tạo trình kích hoạt với SQL động bằng PL / PgSQL trong Trình kích hoạt kiểm tra mẫu cho PostgreSQL. Cách tiếp cận tương tự sẽ hoạt động với bất kỳ DDL nào khác.

Xem hàm audit.audit_table và sử dụng định dạng formatEXECUTE ở đó.

Điều đó nói rằng, việc cần tạo các bảng theo thủ tục có thể (nhưng không phải lúc nào cũng vậy) là một dấu hiệu của thiết kế lược đồ có vấn đề.

Ví dụ đơn giản về SQL động tạo bảng:

CREATE OR REPLACE FUNCTION demo_dynamic_table(tablename text) RETURNS void AS $$                                                                                      
BEGIN                                                                                                                                                                          
    EXECUTE format('CREATE TABLE %I (id serial primary key);', tablename);
END;
$$ LANGUAGE plpgsql;

Cách tiếp cận tương tự cũng hoạt động để tạo trình kích hoạt, v.v.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách tính tổng có điều kiện hai cột trong PostgreSQL 9.3

  2. Postgres tương tự như ÁP DỤNG CHÉO trong SQL Server

  3. Chuyển các biến C vào lệnh SQL

  4. Hệ thống tệp Linux và điểm chuẩn điểm kiểm tra PostgreSQL

  5. Ứng dụng khách Postgres bị khóa khi tạo bảng mới