aboutsummaryrefslogtreecommitdiff
path: root/src/db/migration/05-strict-tables.sql
diff options
context:
space:
mode:
authorJoris2025-02-07 14:54:22 +0100
committerJoris2025-02-07 14:54:22 +0100
commit2c3855e80df3f3ca7acaf0fc919bca66d495230c (patch)
treec6eadaef567236063f8af762afad51ef3911c21c /src/db/migration/05-strict-tables.sql
parentbfe4aa78d882b9d95bd1f954371136f3aa5c38c9 (diff)
Move migration to migrations folder
Diffstat (limited to 'src/db/migration/05-strict-tables.sql')
-rw-r--r--src/db/migration/05-strict-tables.sql107
1 files changed, 0 insertions, 107 deletions
diff --git a/src/db/migration/05-strict-tables.sql b/src/db/migration/05-strict-tables.sql
deleted file mode 100644
index cf7ef4b..0000000
--- a/src/db/migration/05-strict-tables.sql
+++ /dev/null
@@ -1,107 +0,0 @@
--- Activate strict mode
-
--- Start with users and categories, as it’s referenced in other tables.
--- Otherwise, the reference is set to the renamed non strict table.
-
--- Users
-
-ALTER TABLE "users" RENAME TO "users_non_strict";
-
-CREATE TABLE IF NOT EXISTS "users"(
- "id" INTEGER PRIMARY KEY,
- "email" TEXT NOT NULL,
- "name" TEXT NOT NULL,
- "password" TEXT NOT NULL,
- "login_token" TEXT NULL,
- "created_at" TEXT NULL DEFAULT (datetime('now')),
- "updated_at" TEXT NULL,
- "deleted_at" TEXT NULL,
- CONSTRAINT "uniq_user_email" UNIQUE ("email"),
- CONSTRAINT "uniq_user_name" UNIQUE ("name")
-) STRICT;
-
-INSERT INTO users (id, created_at, email, name, password, login_token)
- SELECT id, created_at, email, name, password, login_token
- FROM users_non_strict;
-
-DROP TABLE users_non_strict;
-
--- Categories
-
-ALTER TABLE "categories" RENAME TO "categories_non_strict";
-
-CREATE TABLE IF NOT EXISTS "categories"(
- "id" INTEGER PRIMARY KEY,
- "name" TEXT NOT NULL,
- "color" TEXT NOT NULL,
- "created_at" TEXT NULL DEFAULT (datetime('now')),
- "updated_at" TEXT NULL,
- "deleted_at" TEXT NULL
-) STRICT;
-
-INSERT INTO categories (id, name, color, created_at, updated_at, deleted_at)
- SELECT id, name, color, created_at, updated_at, deleted_at
- FROM categories_non_strict;
-
-DROP TABLE categories_non_strict;
-
--- Payments
-
-ALTER TABLE "payments" RENAME TO "payments_non_strict";
-
-CREATE TABLE IF NOT EXISTS "payments"(
- "id" INTEGER PRIMARY KEY,
- "user_id" INTEGER NOT NULL REFERENCES "users",
- "name" TEXT NOT NULL,
- "cost" INTEGER NOT NULL,
- "date" TEXT NOT NULL,
- "frequency" TEXT NOT NULL,
- "category_id" INTEGER NOT NULL REFERENCES "categories",
- "created_at" TEXT NULL DEFAULT (datetime('now')),
- "updated_at" TEXT NULL,
- "deleted_at" TEXT NULL
-) STRICT;
-
-DROP INDEX IF EXISTS payment_date;
-CREATE INDEX payment_date ON payments(date);
-
-INSERT INTO payments (id, user_id, name, cost, date, frequency, category_id, created_at, updated_at, deleted_at)
- SELECT id, user_id, name, cost, date, frequency, category_id, created_at, updated_at, deleted_at
- FROM payments_non_strict;
-
-DROP TABLE payments_non_strict;
-
--- Jobs
-
-ALTER TABLE "jobs" RENAME TO "jobs_non_strict";
-
-CREATE TABLE IF NOT EXISTS "jobs"(
- "name" TEXT PRIMARY KEY,
- "last_execution" TEXT NOT NULL DEFAULT (datetime('now'))
-) STRICT;
-
-INSERT INTO jobs (name, last_execution)
- SELECT name, last_execution
- FROM jobs_non_strict;
-
-DROP TABLE jobs_non_strict;
-
--- Incomes
-
-ALTER TABLE "incomes" RENAME TO "incomes_non_strict";
-
-CREATE TABLE IF NOT EXISTS "incomes"(
- "id" INTEGER PRIMARY KEY,
- "user_id" INTEGER NOT NULL REFERENCES "users",
- "date" TEXT NOT NULL,
- "amount" INTEGER NOT NULL,
- "created_at" TEXT NULL DEFAULT (datetime('now')),
- "updated_at" TEXT NULL,
- "deleted_at" TEXT NULL
-) STRICT;
-
-INSERT INTO incomes (id, user_id, date, amount, created_at, updated_at, deleted_at)
- SELECT id, user_id, date, amount, created_at, updated_at, deleted_at
- FROM incomes_non_strict;
-
-DROP TABLE incomes_non_strict;