Added basic SQL schema
Signed-off-by: Louis Vallat <louis@louis-vallat.xyz>
This commit is contained in:
parent
bcac5c325f
commit
61fc79e39f
72
MoviesQuoteBot.sql
Normal file
72
MoviesQuoteBot.sql
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
DROP TABLE IF EXISTS application, film, language, subtitle_line, Subtitle;
|
||||||
|
|
||||||
|
/**
|
||||||
|
Store some information on the application.
|
||||||
|
*/
|
||||||
|
CREATE TABLE IF NOT EXISTS application
|
||||||
|
(
|
||||||
|
id int GENERATED ALWAYS AS IDENTITY,
|
||||||
|
app_key text NOT NULL,
|
||||||
|
app_value text NOT NULL,
|
||||||
|
PRIMARY KEY (id),
|
||||||
|
UNIQUE (app_key)
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Film
|
||||||
|
*/
|
||||||
|
CREATE TABLE IF NOT EXISTS film
|
||||||
|
(
|
||||||
|
id int GENERATED ALWAYS AS IDENTITY,
|
||||||
|
imdb_id varchar(10) NOT NULL,
|
||||||
|
title text NOT NULL,
|
||||||
|
release_date date,
|
||||||
|
poster_link text,
|
||||||
|
PRIMARY KEY (id)
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Available languages
|
||||||
|
*/
|
||||||
|
CREATE TABLE IF NOT EXISTS language
|
||||||
|
(
|
||||||
|
id int GENERATED ALWAYS AS IDENTITY,
|
||||||
|
alpha3_b char(3) NOT NULL,
|
||||||
|
alpha3_t char(3),
|
||||||
|
alpha2 char(2),
|
||||||
|
english text NOT NULL,
|
||||||
|
french text NOT NULL,
|
||||||
|
PRIMARY KEY (id)
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Subtitles
|
||||||
|
*/
|
||||||
|
CREATE TABLE IF NOT EXISTS Subtitle
|
||||||
|
(
|
||||||
|
id int GENERATED ALWAYS AS IDENTITY,
|
||||||
|
film_id int NOT NULL,
|
||||||
|
language_id int NOT NULL,
|
||||||
|
importer varchar(37),
|
||||||
|
imported_date timestamptz NOT NULL DEFAULT now(),
|
||||||
|
UNIQUE (film_id, language_id),
|
||||||
|
PRIMARY KEY (id),
|
||||||
|
FOREIGN KEY (film_id)
|
||||||
|
REFERENCES Film (id),
|
||||||
|
FOREIGN KEY (language_id)
|
||||||
|
REFERENCES Language (id)
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Subtitle lines
|
||||||
|
*/
|
||||||
|
CREATE TABLE IF NOT EXISTS subtitle_line
|
||||||
|
(
|
||||||
|
id int GENERATED ALWAYS AS IDENTITY,
|
||||||
|
subtitle_id int NOT NULL,
|
||||||
|
dialog_line text NOT NULL,
|
||||||
|
time_code text NOT NULL,
|
||||||
|
PRIMARY KEY (id),
|
||||||
|
FOREIGN KEY (subtitle_id)
|
||||||
|
REFERENCES subtitle (id)
|
||||||
|
);
|
Loading…
Reference in New Issue
Block a user