-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdb_init.sql
74 lines (73 loc) · 2.33 KB
/
db_init.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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
CREATE DATABASE rql;
\c rql;
CREATE TABLE users
(
userid serial NOT NULL,
username character varying,
firstname character varying,
hashpassword character varying,
lastname character varying,
isadmin boolean,
CONSTRAINT user_pkey PRIMARY KEY (userid),
CONSTRAINT user_username_key UNIQUE (username)
);
CREATE TABLE project
(
projectid serial NOT NULL,
projectname character varying,
creationdate character varying,
userid character varying,
description character varying,
CONSTRAINT project_pkey PRIMARY KEY (projectid),
CONSTRAINT project_userid_fkey FOREIGN KEY (userid)
REFERENCES public.users (username) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
);
CREATE TABLE database
(
"databaseID" serial NOT NULL,
host character varying,
port integer,
name character varying,
userid character varying,
password character varying,
type character varying,
projectid bigint,
CONSTRAINT database_pkey PRIMARY KEY ("databaseID"),
CONSTRAINT pro FOREIGN KEY (projectid)
REFERENCES public.project (projectid) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
);
CREATE TABLE collaborator
(
collaboratorid serial NOT NULL,
projectid bigint,
userid character varying,
CONSTRAINT collaborator_pkey PRIMARY KEY (collaboratorid),
CONSTRAINT collaborator_projectid_fkey FOREIGN KEY (projectid)
REFERENCES public.project (projectid) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT collaborator_userid_fkey FOREIGN KEY (userid)
REFERENCES public.users (username) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
);
CREATE TABLE favorite
(
favoriteid serial NOT NULL,
description character varying,
query character varying,
creationdate character varying,
projectid bigint,
favoritename character varying,
type character varying,
CONSTRAINT favorite_pkey PRIMARY KEY (favoriteid),
CONSTRAINT favorite_projectid_fkey FOREIGN KEY (projectid)
REFERENCES public.project (projectid) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT favorite_favoritename_key UNIQUE (favoritename)
);
INSERT INTO users(
username, firstname, hashpassword, lastname, isadmin)
VALUES ('admin', 'admin', '$2a$12$Cq1GoUaBySCjWBHJJALYNOetItTezPXr1B9JdsLa8xqH5ARVVFplm', 'admin', TRUE);
-- login: admin
-- password: adminadmin