Database migrations and schema management

12160
0

Rails migrations evolve database schema over time. I use change method for reversible migrations. Migrations create tables, add/remove columns, add indices. up and down methods provide explicit control. Irreversible migrations like data transformations need manual down. Database constraints—foreign keys, uniqueness, not null—ensure integrity. Indices speed queries—I add them to foreign keys and frequently queried columns. migrate:rollback undoes migrations. db:migrate:status shows applied migrations. Migrations are version-controlled, enabling team coordination. I keep migrations small and focused. Understanding SQL helps write efficient schema changes. Proper indexing dramatically improves production query performance.