PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да получите името на променената таблица в тригер за събитие на Postgres?

Променливите, достъпни за plpgsql в тригер, са дефинирани тук:

http://www.postgresql .org/docs/9.3/static/plpgsql-trigger.html#PLPGSQL-EVENT-TRIGGER-EXAMPLE

Това, което не мога да разбера от текста, е колко променливи за „събитие“ има. Със сигурност има две:

TG_EVENT
Data type text; a string representing the event the trigger is fired for.

TG_TAG
Data type text; variable that contains the command tag for which the trigger is fired.

Можете да ги отпечатате във вашата функция, за да видите дали съдържат информацията за таблицата, която търсите. Документацията показва куп други променливи, които са за редовни събития. Не знам дали това ще помогне, но може би TG_TABLE_NAME е зададено?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL - създайте колона с автоматично нарастване за непървичен ключ

  2. Как мога да импортирам данни от ASCII (ISO/IEC 8859-1) в моята база данни Rails/PGSQL?

  3. Как работи current_timestamp() в PostgreSQL

  4. Търсене на пълен текст в Postgres или CouchDB?

  5. Конкатенацията на низ с нула изглежда анулира целия низ - това ли е желаното поведение в Postgres?