1eb17a0ac5
fix: drizzle migrations folder
46 lines
1.6 KiB
SQL
46 lines
1.6 KiB
SQL
CREATE TABLE `sandbox` (
|
|
`id` text PRIMARY KEY NOT NULL,
|
|
`name` text NOT NULL,
|
|
`type` text NOT NULL,
|
|
`visibility` text,
|
|
`createdAt` integer DEFAULT CURRENT_TIMESTAMP,
|
|
`user_id` text NOT NULL,
|
|
`likeCount` integer DEFAULT 0,
|
|
`viewCount` integer DEFAULT 0,
|
|
FOREIGN KEY (`user_id`) REFERENCES `user`(`id`) ON UPDATE no action ON DELETE no action
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE `sandbox_likes` (
|
|
`user_id` text NOT NULL,
|
|
`sandbox_id` text NOT NULL,
|
|
`createdAt` integer DEFAULT CURRENT_TIMESTAMP,
|
|
PRIMARY KEY(`sandbox_id`, `user_id`),
|
|
FOREIGN KEY (`user_id`) REFERENCES `user`(`id`) ON UPDATE no action ON DELETE no action,
|
|
FOREIGN KEY (`sandbox_id`) REFERENCES `sandbox`(`id`) ON UPDATE no action ON DELETE no action
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE `user` (
|
|
`id` text PRIMARY KEY NOT NULL,
|
|
`name` text NOT NULL,
|
|
`email` text NOT NULL,
|
|
`username` text NOT NULL,
|
|
`avatarUrl` text,
|
|
`githubToken` text,
|
|
`createdAt` integer DEFAULT CURRENT_TIMESTAMP,
|
|
`generations` integer DEFAULT 0,
|
|
`tier` text DEFAULT 'FREE',
|
|
`tierExpiresAt` integer,
|
|
`lastResetDate` integer
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE `users_to_sandboxes` (
|
|
`userId` text NOT NULL,
|
|
`sandboxId` text NOT NULL,
|
|
`sharedOn` integer,
|
|
FOREIGN KEY (`userId`) REFERENCES `user`(`id`) ON UPDATE no action ON DELETE no action,
|
|
FOREIGN KEY (`sandboxId`) REFERENCES `sandbox`(`id`) ON UPDATE no action ON DELETE no action
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE UNIQUE INDEX `sandbox_id_unique` ON `sandbox` (`id`);--> statement-breakpoint
|
|
CREATE UNIQUE INDEX `user_id_unique` ON `user` (`id`);--> statement-breakpoint
|
|
CREATE UNIQUE INDEX `user_username_unique` ON `user` (`username`); |