Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Check out <a href="http://www.liquibase.org/index.html" rel="nofollow" title="liquibase">liquibase</a>. We use it in the company I work at to setup our PostgreSQL database. It's open source, easy to use and the <a href="http://www.liquibase.org/documentation/databasechangelog.html" rel="nofollow">changelog</a> file you end up with can be added to source control. Each <a href="http://www.liquibase.org/documentation/changeset.html" rel="nofollow">changeset</a> gets an id, so that each changeset is only run once. You end up with two extra tables for tracking the changes to the database when it's run.</p> <p>While it's DB agnostic, you can use PostgreSQL SQL directly in each changeset and each changeset can have it's own comments. </p> <p>The only caveat from having used it is that you have to caution yourself and others not to re-use a changeset once it's been applied to a database. Any changes to an already applied changeset result in a different checksum (even whitespace) which can cause liquibase to abort it's updates. This can end up in failed DB updates in the field, so each update to any of the changelogs should be tested locally first. Instead all changes, however minor should be inserted into a new changeset with a new id. They have a changeset sub-tag called "validCheckSum" to let you work around this, but I think it's better to try to enforce always making a new changeset.</p> <p>Here are the doc links for <a href="http://www.liquibase.org/documentation/changes/create_table.html" rel="nofollow">creating a table</a> and <a href="http://www.liquibase.org/documentation/changes/create_view.html" rel="nofollow">creating a view</a> for example.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload