-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathschema.sql
More file actions
33 lines (31 loc) · 1.14 KB
/
schema.sql
File metadata and controls
33 lines (31 loc) · 1.14 KB
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
-- Drop existing tables if they exist
DROP TABLE IF EXISTS query_results;
DROP TABLE IF EXISTS schedules;
-- Create schedules table
CREATE TABLE schedules (
id UUID PRIMARY KEY,
query TEXT NOT NULL,
model TEXT,
is_active BOOLEAN DEFAULT true,
status TEXT CHECK (status IN ('scheduled', 'processing', 'completed', 'error')),
frequency TEXT CHECK (frequency IN ('immediate', 'daily', 'weekly')),
time TIME,
week_day TEXT CHECK (week_day IN ('monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday')),
next_run TIMESTAMP WITH TIME ZONE,
last_run TIMESTAMP WITH TIME ZONE,
last_error TEXT,
last_error_time TIMESTAMP WITH TIME ZONE,
last_result TEXT,
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);
-- Create query_results table
CREATE TABLE query_results (
id SERIAL PRIMARY KEY,
schedule_id UUID REFERENCES schedules(id),
query TEXT NOT NULL,
result TEXT NOT NULL,
model TEXT,
citations JSONB DEFAULT '[]'::jsonb,
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);