-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathschema.sql
50 lines (39 loc) · 887 Bytes
/
schema.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
DROP DATABASE IF EXISTS nodejs;
CREATE DATABASE nodejs
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;
USE nodejs;
CREATE TABLE Albums
(
name VARCHAR(50) UNIQUE PRIMARY KEY,
title VARCHAR(100),
date DATETIME,
description VARCHAR(500),
-- allow for sorting on date.
INDEX(date)
)
ENGINE = InnoDB;
CREATE TABLE Photos
(
album_name VARCHAR(50),
filename VARCHAR(50),
description VARCHAR(500),
date DATETIME,
path VARCHAR(100),
FOREIGN KEY (album_name) REFERENCES Albums (name),
INDEX (album_name, date)
)
ENGINE = InnoDB;
CREATE TABLE Users
(
user_uuid VARCHAR(50) UNIQUE PRIMARY KEY,
email VARCHAR(150) UNIQUE,
display_name VARCHAR(100) UNIQUE,
password VARCHAR(128),
first_seen_date BIGINT,
last_modified_date BIGINT,
deleted BOOL DEFAULT false,
INDEX(email, deleted),
INDEX(user_uuid, deleted)
)
ENGINE = InnoDB;