Re: Database migrations

From: Alejandro Román <alejandro(at)aroman(dot)sh>
To: Simon Connah <simon(dot)n(dot)connah(at)protonmail(dot)com>
Cc: "pgsql-novice(at)lists(dot)postgresql(dot)org" <pgsql-novice(at)lists(dot)postgresql(dot)org>
Subject: Re: Database migrations
Date: 2021-03-13 22:04:55
Message-ID: D7AAB6AC-FCCB-4C50-84F6-3E98FF29D35D@aroman.sh
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

Hello,

> I was thinking about just having a bunch of SQL files with a version number and date and applying them to the database from oldest to newest (with a table storing information for files that have already been processed). Does this sound like a reasonable solution?

It does. Actually, there is a known JS library that does exactly that: Knex.js (1). It allows you to define your SQL in plain JS (e.g. `knex.schema.createTable(‘users’, …)`). It will then keep track of which migrations (JS files) have been ran and which need to be run. It stores this metadata in a table called “migrations” (you can configure the exact name).

(1) http://knexjs.org/#Migrations

Best wishes,

Alejandro

In response to

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Steve Baldwin 2021-03-13 23:19:35 Re: Database migrations
Previous Message Tom Lane 2021-03-13 21:58:35 Re: Database migrations