-
Notifications
You must be signed in to change notification settings - Fork 6
/
ratings.sql
52 lines (35 loc) · 1.42 KB
/
ratings.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
-- Create Movie Ratings PostgreSQL database schema (DDL)
DROP TABLE IF EXISTS public.ratings;
DROP TABLE IF EXISTS public.tags;
DROP TABLE IF EXISTS public.links;
DROP TABLE IF EXISTS public.movies;
DROP SCHEMA IF EXISTS public;
CREATE SCHEMA public;
COMMENT ON SCHEMA public IS 'standard public schema';
ALTER SCHEMA public OWNER TO masteruser;
CREATE TABLE IF NOT EXISTS public.movies (
movieId bigint NOT NULL CONSTRAINT movies_pkey PRIMARY KEY,
title text NOT NULL,
genres text NOT NULL
);
ALTER TABLE public.movies OWNER TO masteruser;
CREATE TABLE IF NOT EXISTS public.ratings (
userId bigint NOT NULL,
movieId bigint NOT NULL CONSTRAINT ratings_movies_movie_id_fk REFERENCES public.movies ON UPDATE CASCADE ON DELETE RESTRICT,
rating numeric(2, 1) NOT NULL,
timestamp bigint NOT NULL
);
ALTER TABLE public.ratings OWNER TO masteruser;
CREATE TABLE IF NOT EXISTS public.links (
movieId bigint NOT NULL CONSTRAINT links_movies_movie_id_fk REFERENCES public.movies ON UPDATE CASCADE ON DELETE RESTRICT,
imdbId bigint NOT NULL,
tmdbId bigint NOT NULL
);
ALTER TABLE public.links OWNER TO masteruser;
CREATE TABLE IF NOT EXISTS public.tags (
userId bigint NOT NULL,
movieId bigint NOT NULL CONSTRAINT tags_movies_movie_id_fk REFERENCES public.movies ON UPDATE CASCADE ON DELETE RESTRICT,
tag text NOT NULL,
timestamp bigint NOT NULL
);
ALTER TABLE public.tags OWNER TO masteruser;