Skip to content
File

Blob: drizzle/d1/0003_clean_shatterstar.sql

sql24 lines
1CREATE TABLE `published_pages` (
2 `workspace_id` text NOT NULL,
3 `page_id` text NOT NULL,
4 `published_by` text NOT NULL,
5 `published_at` text DEFAULT (datetime('now')) NOT NULL,
6 PRIMARY KEY(`workspace_id`, `page_id`),
7 FOREIGN KEY (`workspace_id`) REFERENCES `workspaces`(`id`) ON UPDATE no action ON DELETE cascade,
8 FOREIGN KEY (`page_id`) REFERENCES `pages`(`id`) ON UPDATE no action ON DELETE cascade,
9 FOREIGN KEY (`published_by`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE no action
10);
11--> statement-breakpoint
12CREATE INDEX `idx_published_pages_page` ON `published_pages` (`page_id`);--> statement-breakpoint
13CREATE TABLE `workspace_sites` (
14 `workspace_id` text PRIMARY KEY NOT NULL,
15 `slug` text NOT NULL,
16 `home_page_id` text,
17 `published_at` text,
18 `created_at` text DEFAULT (datetime('now')) NOT NULL,
19 `updated_at` text DEFAULT (datetime('now')) NOT NULL,
20 FOREIGN KEY (`workspace_id`) REFERENCES `workspaces`(`id`) ON UPDATE no action ON DELETE cascade,
21 FOREIGN KEY (`home_page_id`) REFERENCES `pages`(`id`) ON UPDATE no action ON DELETE set null
22);
23--> statement-breakpoint
24CREATE UNIQUE INDEX `workspace_sites_slug_unique` ON `workspace_sites` (`slug`);