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

Rails, PostgreSQL и History Triggers

Ако имате нужда или искате специфични за базата данни функции, които ActiveRecord не разбира, тогава трябва да преминете към db/structure.sql за проследяване на вашата схема. db/structure.sql е до голяма степен необработен дъмп на вашата схема, направен с помощта на собствените инструменти на базата данни, така че ще съдържа тригери, ПРОВЕРКИ ограничения, индекси на резултатите от функциите и всичко останало.

Превключването е лесно:

  1. Актуализирайте своя config/application.rb да съдържа config.active_record.schema_format = :sql .
  2. Направете rake db:structure:dump за да получите начален db/structure.sql .
  3. Изтрийте db/schema.rb от дървото на вашите директории и контрола на ревизии.
  4. Добавете db/structure.sql за контрол на ревизии.
  5. Коригирайте навиците си за рейк:
    • Използвайте db:structure:dump вместо db:schema:dump
    • Използвайте db:structure:load вместо db:schema:load

Всичко останало трябва да работи както обикновено (ако приемем, разбира се, че сте здрави и използвате PostgreSQL за разработка, тестване и производство).

С тази промяна вашите задействания ще бъдат проследявани в db/structure.sql и повторното създаване на базата данни няма да ги загуби.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Готови ли сме за Nordic PPGDay?

  2. В Redshift/Postgres, как да преброя редове, които отговарят на условие?

  3. PostgreSQL Connection Pooling:Част 3 – Pgpool-II

  4. Предоставяне на привилегии за конкретна база данни в PostgreSQL

  5. Изтрийте дублиращи се редове от малка таблица