chore: add migration scripts

pull/2838/head
Steven 1 year ago
parent 79558028c0
commit 4f2b00b4f3

@ -0,0 +1,11 @@
ALTER TABLE `memo` ADD COLUMN `resource_name` VARCHAR(256) NOT NULL AFTER `id`;
UPDATE `memo` SET `resource_name` = uuid();
CREATE UNIQUE INDEX idx_memo_resource_name ON `memo` (`resource_name`);
ALTER TABLE `resource` ADD COLUMN `resource_name` VARCHAR(256) NOT NULL AFTER `id`;
UPDATE `resource` SET `resource_name` = uuid();
CREATE UNIQUE INDEX idx_resource_resource_name ON `resource` (`resource_name`);

@ -36,6 +36,7 @@ CREATE TABLE `user_setting` (
-- memo
CREATE TABLE `memo` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`resource_name` VARCHAR(256) NOT NULL UNIQUE,
`creator_id` INT NOT NULL,
`created_ts` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_ts` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
@ -63,6 +64,7 @@ CREATE TABLE `memo_relation` (
-- resource
CREATE TABLE `resource` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`resource_name` VARCHAR(256) NOT NULL UNIQUE,
`creator_id` INT NOT NULL,
`created_ts` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_ts` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,

@ -0,0 +1,15 @@
ALTER TABLE memo ADD COLUMN resource_name TEXT;
UPDATE memo SET resource_name = uuid_in(md5(random()::text || random()::text)::cstring);
ALTER TABLE memo ALTER COLUMN resource_name SET NOT NULL;
CREATE UNIQUE INDEX idx_memo_resource_name ON memo (resource_name);
ALTER TABLE resource ADD COLUMN resource_name TEXT;
UPDATE resource SET resource_name = uuid_in(md5(random()::text || random()::text)::cstring);
ALTER TABLE resource ALTER COLUMN resource_name SET NOT NULL;
CREATE UNIQUE INDEX idx_resource_resource_name ON resource (resource_name);

@ -36,6 +36,7 @@ CREATE TABLE user_setting (
-- memo
CREATE TABLE memo (
id SERIAL PRIMARY KEY,
resource_name TEXT NOT NULL UNIQUE,
creator_id INTEGER NOT NULL,
created_ts BIGINT NOT NULL DEFAULT EXTRACT(EPOCH FROM NOW()),
updated_ts BIGINT NOT NULL DEFAULT EXTRACT(EPOCH FROM NOW()),
@ -63,6 +64,7 @@ CREATE TABLE memo_relation (
-- resource
CREATE TABLE resource (
id SERIAL PRIMARY KEY,
resource_name TEXT NOT NULL UNIQUE,
creator_id INTEGER NOT NULL,
created_ts BIGINT NOT NULL DEFAULT EXTRACT(EPOCH FROM NOW()),
updated_ts BIGINT NOT NULL DEFAULT EXTRACT(EPOCH FROM NOW()),

@ -0,0 +1,11 @@
ALTER TABLE memo ADD COLUMN resource_name TEXT NOT NULL;
UPDATE memo SET resource_name = lower(hex(randomblob(8)));
CREATE UNIQUE INDEX idx_memo_resource_name ON memo (resource_name);
ALTER TABLE resource ADD COLUMN resource_name TEXT NOT NULL;
UPDATE resource SET resource_name = lower(hex(randomblob(8)));
CREATE UNIQUE INDEX idx_resource_resource_name ON resource (resource_name);

@ -1,19 +1,3 @@
-- drop all tables first
DROP TABLE IF EXISTS migration_history;
DROP TABLE IF EXISTS system_setting;
DROP TABLE IF EXISTS user;
DROP TABLE IF EXISTS user_setting;
DROP TABLE IF EXISTS memo;
DROP TABLE IF EXISTS memo_organizer;
DROP TABLE IF EXISTS memo_relation;
DROP TABLE IF EXISTS resource;
DROP TABLE IF EXISTS tag;
DROP TABLE IF EXISTS activity;
DROP TABLE IF EXISTS storage;
DROP TABLE IF EXISTS idp;
DROP TABLE IF EXISTS inbox;
DROP TABLE IF EXISTS webhook;
-- migration_history
CREATE TABLE migration_history (
version TEXT NOT NULL PRIMARY KEY,
@ -55,6 +39,7 @@ CREATE TABLE user_setting (
-- memo
CREATE TABLE memo (
id INTEGER PRIMARY KEY AUTOINCREMENT,
resource_name TEXT NOT NULL UNIQUE,
creator_id INTEGER NOT NULL,
created_ts BIGINT NOT NULL DEFAULT (strftime('%s', 'now')),
updated_ts BIGINT NOT NULL DEFAULT (strftime('%s', 'now')),
@ -86,6 +71,7 @@ CREATE TABLE memo_relation (
-- resource
CREATE TABLE resource (
id INTEGER PRIMARY KEY AUTOINCREMENT,
resource_name TEXT NOT NULL UNIQUE,
creator_id INTEGER NOT NULL,
created_ts BIGINT NOT NULL DEFAULT (strftime('%s', 'now')),
updated_ts BIGINT NOT NULL DEFAULT (strftime('%s', 'now')),

Loading…
Cancel
Save