sql >> Databasteknik >  >> RDS >> PostgreSQL

Rails, PostgreSQL och History Triggers

Om du behöver eller vill ha databasspecifika funktioner som ActiveRecord inte förstår bör du byta till db/structure.sql för att hålla reda på ditt schema. db/structure.sql är i stort sett en rådump av ditt schema gjort med hjälp av databasens inbyggda verktyg så det kommer att innehålla triggers, CHECK-begränsningar, index på funktionsresultat och allt annat.

Det är enkelt att byta:

  1. Uppdatera din config/application.rb att innehålla config.active_record.schema_format = :sql .
  2. Gör en rake db:structure:dump för att få en initial db/structure.sql .
  3. Ta bort db/schema.rb från ditt katalogträd och revisionskontroll.
  4. Lägg till db/structure.sql till revisionskontroll.
  5. Justera dina rakevanor:
    • Använd db:structure:dump istället för db:schema:dump
    • Använd db:structure:load istället för db:schema:load

Allt annat ska fungera som vanligt (förutsatt att du är frisk och använder PostgreSQL för utveckling, testning och produktion).

Med denna ändring gjord kommer dina utlösare att spåras i db/structure.sql och att återskapa databasen kommer inte att förlora dem.



  1. Hur man importerar/återställer MySql-tabeller med PHP

  2. Hur man skapar PL/SQL-funktion i Oracle Database

  3. Introducerar ny funktion - Spotlight Cloud Replication

  4. Python:Fråga efter data med ljud