-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinit.sql
More file actions
33 lines (30 loc) · 910 Bytes
/
init.sql
File metadata and controls
33 lines (30 loc) · 910 Bytes
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
-- Create result status enum type
CREATE TYPE resultstatus AS ENUM (
'PENDING',
'RUNNING',
'COMPLETED',
'FAILED',
'CANCELLED'
);
-- Create requests table
CREATE TABLE IF NOT EXISTS requests (
request_id VARCHAR PRIMARY KEY,
command VARCHAR NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Create results table
CREATE TABLE IF NOT EXISTS results (
result_id VARCHAR PRIMARY KEY,
result_path VARCHAR,
status resultstatus NOT NULL DEFAULT 'PENDING',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Create request_result relation table
CREATE TABLE IF NOT EXISTS request_result (
request_id VARCHAR,
result_id VARCHAR,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (request_id, result_id),
FOREIGN KEY (request_id) REFERENCES requests(request_id),
FOREIGN KEY (result_id) REFERENCES results(result_id)
);