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

Truy vấn động trong hàm kích hoạt trong PostgreSQL

Tôi đã phải thay đổi NEW tới ($1) vì nó là tham chiếu đến tham số liên kết đầu tiên.

Truy vấn đúng là:

CREATE OR REPLACE FUNCTION "Site"."UpdateAncestorModified"()
  RETURNS trigger AS
$BODY$BEGIN
    EXECUTE
        format
        ('
            UPDATE 
                "' || TG_TABLE_SCHEMA || '"."' || TG_TABLE_NAME || '" 
            SET
                modified = ($1).modified
            WHERE
                id = ($1)."ancestorId"
            AND
                modified <> ($1).modified
        ')
    USING
        NEW;
    RETURN NEW;
END$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Trích xuất và tính trung bình các giá trị không liên quan trong DB tạm thời trong postgresql

  2. MySQL tương đương với PHÂN TÍCH GIẢI THÍCH CỦA PostgreSQL là gì

  3. nhân bản dữ liệu phân cấp

  4. thủ tục được lưu trữ postgresql với truy vấn trên một số lược đồ

  5. Chia tỷ lệ PostgreSQL cho lượng lớn dữ liệu