Files
SwimBuddy/drizzle/0000_mushy_groot.sql

50 lines
1.4 KiB
SQL

CREATE TABLE `laps` (
`id` text PRIMARY KEY NOT NULL,
`workout_id` text NOT NULL,
`set_position` integer NOT NULL,
`rep_number` integer NOT NULL,
`distance` integer NOT NULL,
`duration` real NOT NULL,
`stroke_count` integer,
`heart_rate` integer,
`swolf` real,
FOREIGN KEY (`workout_id`) REFERENCES `workouts`(`id`) ON UPDATE no action ON DELETE no action
);
--> statement-breakpoint
CREATE TABLE `sets` (
`id` text PRIMARY KEY NOT NULL,
`workout_id` text NOT NULL,
`position` integer NOT NULL,
`stroke` text NOT NULL,
`distance_per_rep` integer NOT NULL,
`rep_count` integer NOT NULL,
`rest_type` text DEFAULT 'fixed_rest' NOT NULL,
`rest_duration` real DEFAULT 0 NOT NULL,
`target_time` real,
FOREIGN KEY (`workout_id`) REFERENCES `workouts`(`id`) ON UPDATE no action ON DELETE no action
);
--> statement-breakpoint
CREATE TABLE `templates` (
`id` text PRIMARY KEY NOT NULL,
`name` text NOT NULL,
`description` text,
`pool_length` real DEFAULT 25 NOT NULL,
`json_data` text NOT NULL,
`is_favorite` integer DEFAULT false NOT NULL,
`created_at` text NOT NULL
);
--> statement-breakpoint
CREATE TABLE `workouts` (
`id` text PRIMARY KEY NOT NULL,
`name` text,
`template_id` text,
`pool_length` real DEFAULT 25 NOT NULL,
`started_at` text NOT NULL,
`finished_at` text,
`total_distance` integer,
`total_duration` real,
`calories` real,
`avg_heart_rate` integer,
`source` text DEFAULT 'manual' NOT NULL
);