Simple Database Migration for Qt.
Config file:
{
"schemaVersions": [
{
"version": 0,
"applySql": "create table table1(id integer)",
"revertSql": "drop table table1"
},
{
"version": 1,
"applySql": "create table table2(id integer)",
"revertSql": "drop table table2"
}
]
}
Apply migration:
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("test.db");
if (db.open()) {
QtDBMigration mig("./config.json");
mig.migrate(); // Database will be at latest version
mig.migrate(0); // Database will be at version 0
}
MIT