chore: combine migrations into one
parent
2be126a7b3
commit
7ce41cd034
|
@ -1,2 +0,0 @@
|
||||||
drop table sessions;
|
|
||||||
drop table users;
|
|
|
@ -1,13 +0,0 @@
|
||||||
create table users (
|
|
||||||
id integer primary key not null,
|
|
||||||
username text unique not null,
|
|
||||||
password_hash text not null
|
|
||||||
);
|
|
||||||
|
|
||||||
create table sessions (
|
|
||||||
id bigint primary key not null,
|
|
||||||
user_id bigint not null
|
|
||||||
references users (id)
|
|
||||||
on delete cascade,
|
|
||||||
unique (id, user_id)
|
|
||||||
);
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
drop table episode_actions;
|
||||||
|
|
||||||
|
drop table subscriptions;
|
||||||
|
|
||||||
|
drop table devices;
|
||||||
|
|
||||||
|
drop table sessions;
|
||||||
|
drop table users;
|
|
@ -0,0 +1,69 @@
|
||||||
|
create table users (
|
||||||
|
id integer primary key not null,
|
||||||
|
username text unique not null,
|
||||||
|
password_hash text not null
|
||||||
|
);
|
||||||
|
|
||||||
|
create table sessions (
|
||||||
|
id bigint primary key not null,
|
||||||
|
user_id bigint not null
|
||||||
|
references users (id)
|
||||||
|
on delete cascade,
|
||||||
|
unique (id, user_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
create table devices (
|
||||||
|
id integer primary key not null,
|
||||||
|
|
||||||
|
device_id text not null,
|
||||||
|
user_id bigint not null
|
||||||
|
references users (id)
|
||||||
|
on delete cascade,
|
||||||
|
|
||||||
|
caption text not null,
|
||||||
|
type text not null,
|
||||||
|
|
||||||
|
unique (user_id, device_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
create table subscriptions (
|
||||||
|
id integer primary key not null,
|
||||||
|
device_id bigint not null
|
||||||
|
references devices (id)
|
||||||
|
on delete cascade,
|
||||||
|
url text not null,
|
||||||
|
|
||||||
|
time_changed bigint not null default 0,
|
||||||
|
deleted boolean not null default false,
|
||||||
|
|
||||||
|
unique (device_id, url)
|
||||||
|
);
|
||||||
|
|
||||||
|
create table episode_actions (
|
||||||
|
id integer primary key not null,
|
||||||
|
|
||||||
|
subscription_id bigint not null
|
||||||
|
references subscriptions (id)
|
||||||
|
on delete cascade,
|
||||||
|
|
||||||
|
-- Can be null, as the device is not always provided
|
||||||
|
device_id bigint
|
||||||
|
references devices (id)
|
||||||
|
on delete set null,
|
||||||
|
|
||||||
|
episode text not null,
|
||||||
|
timestamp bigint,
|
||||||
|
action text not null,
|
||||||
|
started integer,
|
||||||
|
position integer,
|
||||||
|
total integer,
|
||||||
|
|
||||||
|
-- Position should be set if the action type is "Play" and null otherwise
|
||||||
|
check ((action = "Play") = (position is not null)),
|
||||||
|
|
||||||
|
-- Started and position can only be set if the action type is "Play"
|
||||||
|
check (action = "Play" or (started is null and position is null)),
|
||||||
|
|
||||||
|
-- Started and position should be provided together
|
||||||
|
check ((started is null) = (total is null))
|
||||||
|
);
|
|
@ -1 +0,0 @@
|
||||||
drop table devices;
|
|
|
@ -1,13 +0,0 @@
|
||||||
create table devices (
|
|
||||||
id integer primary key not null,
|
|
||||||
|
|
||||||
device_id text not null,
|
|
||||||
user_id bigint not null
|
|
||||||
references users (id)
|
|
||||||
on delete cascade,
|
|
||||||
|
|
||||||
caption text not null,
|
|
||||||
type text not null,
|
|
||||||
|
|
||||||
unique (user_id, device_id)
|
|
||||||
);
|
|
|
@ -1 +0,0 @@
|
||||||
drop table subscriptions;
|
|
|
@ -1,9 +0,0 @@
|
||||||
create table subscriptions (
|
|
||||||
id integer primary key not null,
|
|
||||||
device_id bigint not null
|
|
||||||
references devices (id)
|
|
||||||
on delete cascade,
|
|
||||||
url text not null,
|
|
||||||
|
|
||||||
unique (device_id, url)
|
|
||||||
);
|
|
|
@ -1,6 +0,0 @@
|
||||||
-- This file should undo anything in `up.sql`
|
|
||||||
alter table subscriptions
|
|
||||||
drop column time_changed;
|
|
||||||
|
|
||||||
alter table subscriptions
|
|
||||||
drop column deleted;
|
|
|
@ -1,6 +0,0 @@
|
||||||
-- Your SQL goes here
|
|
||||||
alter table subscriptions
|
|
||||||
add column time_changed bigint not null default 0;
|
|
||||||
|
|
||||||
alter table subscriptions
|
|
||||||
add column deleted boolean not null default false;
|
|
Loading…
Reference in New Issue