feat(阶段1): drizzle schema 从本地库生成并剪掉 Django 框架表
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,453 @@
|
||||
-- Current sql file was generated after introspecting the database
|
||||
-- If you want to run this migration please uncomment this code before executing migrations
|
||||
/*
|
||||
CREATE SEQUENCE "public"."auth_group_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1;--> statement-breakpoint
|
||||
CREATE SEQUENCE "public"."auth_group_permissions_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1;--> statement-breakpoint
|
||||
CREATE SEQUENCE "public"."auth_permission_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1;--> statement-breakpoint
|
||||
CREATE SEQUENCE "public"."django_content_type_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1;--> statement-breakpoint
|
||||
CREATE SEQUENCE "public"."django_migrations_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1;--> statement-breakpoint
|
||||
CREATE TABLE "ai_analysis" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "ai_analysis_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"provider" text NOT NULL,
|
||||
"data" jsonb NOT NULL,
|
||||
"system_prompt" text NOT NULL,
|
||||
"user_prompt" text NOT NULL,
|
||||
"analysis" text NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"user_id" integer NOT NULL,
|
||||
"model" text NOT NULL,
|
||||
"is_pinned" boolean NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "announcement" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"title" text NOT NULL,
|
||||
"content" text NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"last_update_time" timestamp with time zone NOT NULL,
|
||||
"visible" boolean NOT NULL,
|
||||
"created_by_id" integer NOT NULL,
|
||||
"tag" text NOT NULL,
|
||||
"top" boolean NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "achievement" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "achievement_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"name" text NOT NULL,
|
||||
"description" text NOT NULL,
|
||||
"icon" text NOT NULL,
|
||||
"rarity" text NOT NULL,
|
||||
"hidden" boolean DEFAULT false NOT NULL,
|
||||
"metric" text NOT NULL,
|
||||
"operator" text NOT NULL,
|
||||
"threshold" integer NOT NULL,
|
||||
"visible" boolean DEFAULT true NOT NULL,
|
||||
"unlock_count" integer DEFAULT 0 NOT NULL,
|
||||
"order" integer DEFAULT 0 NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "contest" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"title" text NOT NULL,
|
||||
"description" text NOT NULL,
|
||||
"password" text,
|
||||
"start_time" timestamp with time zone NOT NULL,
|
||||
"end_time" timestamp with time zone NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"last_update_time" timestamp with time zone NOT NULL,
|
||||
"visible" boolean NOT NULL,
|
||||
"created_by_id" integer NOT NULL,
|
||||
"allowed_ip_ranges" jsonb NOT NULL,
|
||||
"tag" text NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "contest_announcement" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"title" text NOT NULL,
|
||||
"content" text NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"contest_id" integer NOT NULL,
|
||||
"created_by_id" integer NOT NULL,
|
||||
"visible" boolean NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "flowchart_submission" (
|
||||
"id" text PRIMARY KEY NOT NULL,
|
||||
"mermaid_code" text NOT NULL,
|
||||
"flowchart_data" jsonb NOT NULL,
|
||||
"status" integer NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"ai_score" double precision,
|
||||
"ai_grade" varchar(10),
|
||||
"ai_feedback" text,
|
||||
"ai_suggestions" text,
|
||||
"ai_criteria_details" jsonb NOT NULL,
|
||||
"ai_provider" varchar(50) NOT NULL,
|
||||
"ai_model" varchar(50) NOT NULL,
|
||||
"processing_time" double precision,
|
||||
"evaluation_time" timestamp with time zone,
|
||||
"problem_id" integer NOT NULL,
|
||||
"user_id" integer NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "message" (
|
||||
"id" integer PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "message_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
|
||||
"message" text NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"recipient_id" integer NOT NULL,
|
||||
"sender_id" integer NOT NULL,
|
||||
"submission_id" text NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "judge_server" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"hostname" text NOT NULL,
|
||||
"ip" text,
|
||||
"judger_version" text NOT NULL,
|
||||
"cpu_core" integer NOT NULL,
|
||||
"memory_usage" double precision NOT NULL,
|
||||
"cpu_usage" double precision NOT NULL,
|
||||
"last_heartbeat" timestamp with time zone NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"task_number" integer NOT NULL,
|
||||
"service_url" text,
|
||||
"is_disabled" boolean NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "exercise" (
|
||||
"id" integer PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "exercise_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
|
||||
"type" varchar(16) NOT NULL,
|
||||
"data" jsonb NOT NULL,
|
||||
"order" integer NOT NULL,
|
||||
"created_at" timestamp with time zone NOT NULL,
|
||||
"tutorial_id" integer NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "options_sysoptions" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"key" text NOT NULL,
|
||||
"value" jsonb NOT NULL,
|
||||
CONSTRAINT "options_sysoptions_key_key" UNIQUE("key")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "problemset" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "problemset_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"title" text NOT NULL,
|
||||
"description" text NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"last_update_time" timestamp with time zone NOT NULL,
|
||||
"visible" boolean NOT NULL,
|
||||
"difficulty" text NOT NULL,
|
||||
"status" text NOT NULL,
|
||||
"created_by_id" integer NOT NULL,
|
||||
"end_time" timestamp with time zone
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "problemset_problem" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "problemset_problem_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"order" integer NOT NULL,
|
||||
"is_required" boolean NOT NULL,
|
||||
"score" integer NOT NULL,
|
||||
"hint" text,
|
||||
"problem_id" integer NOT NULL,
|
||||
"problemset_id" bigint NOT NULL,
|
||||
CONSTRAINT "unique_problemset_problem" UNIQUE("problem_id","problemset_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "problemset_progress" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "problemset_progress_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"join_time" timestamp with time zone NOT NULL,
|
||||
"complete_time" timestamp with time zone,
|
||||
"is_completed" boolean NOT NULL,
|
||||
"progress_percentage" double precision NOT NULL,
|
||||
"completed_problems_count" integer NOT NULL,
|
||||
"total_problems_count" integer NOT NULL,
|
||||
"total_score" integer NOT NULL,
|
||||
"progress_detail" jsonb NOT NULL,
|
||||
"problemset_id" bigint NOT NULL,
|
||||
"user_id" integer NOT NULL,
|
||||
CONSTRAINT "unique_problemset_progress_user" UNIQUE("problemset_id","user_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "problemset_submission" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "problemset_submission_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"problem_id" integer NOT NULL,
|
||||
"problemset_id" bigint NOT NULL,
|
||||
"submission_id" text NOT NULL,
|
||||
"user_id" integer NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "reaction" (
|
||||
"id" integer PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "reaction_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
|
||||
"type" varchar(20) NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"problem_id" integer NOT NULL,
|
||||
"user_id" integer NOT NULL,
|
||||
CONSTRAINT "reaction_problem_user_unique" UNIQUE("problem_id","user_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "problem" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"title" text NOT NULL,
|
||||
"description" text NOT NULL,
|
||||
"input_description" text NOT NULL,
|
||||
"output_description" text NOT NULL,
|
||||
"samples" jsonb NOT NULL,
|
||||
"test_case_id" text NOT NULL,
|
||||
"test_case_score" jsonb NOT NULL,
|
||||
"hint" text,
|
||||
"languages" jsonb NOT NULL,
|
||||
"template" jsonb NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"last_update_time" timestamp with time zone,
|
||||
"time_limit" integer NOT NULL,
|
||||
"memory_limit" integer NOT NULL,
|
||||
"visible" boolean DEFAULT true NOT NULL,
|
||||
"difficulty" text NOT NULL,
|
||||
"source" text,
|
||||
"submission_number" bigint DEFAULT 0 NOT NULL,
|
||||
"accepted_number" bigint DEFAULT 0 NOT NULL,
|
||||
"created_by_id" integer NOT NULL,
|
||||
"_id" text NOT NULL,
|
||||
"statistic_info" jsonb DEFAULT '{}'::jsonb NOT NULL,
|
||||
"contest_id" integer,
|
||||
"is_public" boolean DEFAULT false NOT NULL,
|
||||
"share_submission" boolean DEFAULT false NOT NULL,
|
||||
"prompt" text,
|
||||
"answers" jsonb,
|
||||
"allow_flowchart" boolean DEFAULT false NOT NULL,
|
||||
"flowchart_data" jsonb DEFAULT '{}'::jsonb NOT NULL,
|
||||
"flowchart_hint" text,
|
||||
"mermaid_code" text,
|
||||
"show_flowchart" boolean DEFAULT false NOT NULL,
|
||||
"ast_rules" jsonb,
|
||||
"sql_config" jsonb,
|
||||
"sql_display" jsonb,
|
||||
CONSTRAINT "unique_problem_id_contest" UNIQUE("_id","contest_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "problem_tags" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"problem_id" integer NOT NULL,
|
||||
"problemtag_id" integer NOT NULL,
|
||||
CONSTRAINT "problem_tags_problem_id_problemtag_id_318459d1_uniq" UNIQUE("problem_id","problemtag_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "problem_tag" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"name" text NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "submission" (
|
||||
"id" text PRIMARY KEY NOT NULL,
|
||||
"contest_id" integer,
|
||||
"problem_id" integer NOT NULL,
|
||||
"create_time" timestamp with time zone NOT NULL,
|
||||
"user_id" integer NOT NULL,
|
||||
"code" text NOT NULL,
|
||||
"result" integer DEFAULT 6 NOT NULL,
|
||||
"info" jsonb DEFAULT '{}'::jsonb NOT NULL,
|
||||
"language" text NOT NULL,
|
||||
"shared" boolean DEFAULT false NOT NULL,
|
||||
"statistic_info" jsonb DEFAULT '{}'::jsonb NOT NULL,
|
||||
"username" text NOT NULL,
|
||||
"ip" text
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "tutorial" (
|
||||
"id" integer PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "tutorial_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
|
||||
"title" varchar(128) NOT NULL,
|
||||
"content" text NOT NULL,
|
||||
"created_at" timestamp with time zone NOT NULL,
|
||||
"updated_at" timestamp with time zone NOT NULL,
|
||||
"is_public" boolean NOT NULL,
|
||||
"order" integer NOT NULL,
|
||||
"created_by_id" integer NOT NULL,
|
||||
"code" text,
|
||||
"type" varchar(10) NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "user_stat" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "user_stat_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"metrics" jsonb DEFAULT '{}'::jsonb NOT NULL,
|
||||
"update_time" timestamp with time zone NOT NULL,
|
||||
"user_id" integer NOT NULL,
|
||||
CONSTRAINT "user_stat_user_id_key" UNIQUE("user_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "user_achievement" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "user_achievement_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"unlock_time" timestamp with time zone NOT NULL,
|
||||
"backfilled" boolean DEFAULT false NOT NULL,
|
||||
"notified" boolean DEFAULT false NOT NULL,
|
||||
"achievement_id" bigint NOT NULL,
|
||||
"user_id" integer NOT NULL,
|
||||
CONSTRAINT "unique_user_achievement" UNIQUE("achievement_id","user_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "user_badge" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "user_badge_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"earned_time" timestamp with time zone NOT NULL,
|
||||
"badge_id" bigint NOT NULL,
|
||||
"user_id" integer NOT NULL,
|
||||
CONSTRAINT "unique_user_badge" UNIQUE("badge_id","user_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "user_profile" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"acm_problems_status" jsonb DEFAULT '{}'::jsonb NOT NULL,
|
||||
"avatar" text NOT NULL,
|
||||
"blog" varchar(200),
|
||||
"mood" text,
|
||||
"accepted_number" integer DEFAULT 0 NOT NULL,
|
||||
"submission_number" integer DEFAULT 0 NOT NULL,
|
||||
"github" text,
|
||||
"school" text,
|
||||
"major" text,
|
||||
"user_id" integer NOT NULL,
|
||||
"real_name" text,
|
||||
"language" text,
|
||||
CONSTRAINT "user_profile_user_id_key" UNIQUE("user_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "acm_contest_rank" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"submission_number" integer DEFAULT 0 NOT NULL,
|
||||
"accepted_number" integer DEFAULT 0 NOT NULL,
|
||||
"total_time" integer DEFAULT 0 NOT NULL,
|
||||
"submission_info" jsonb DEFAULT '{}'::jsonb NOT NULL,
|
||||
"contest_id" integer NOT NULL,
|
||||
"user_id" integer NOT NULL,
|
||||
CONSTRAINT "unique_acm_rank_user_contest" UNIQUE("contest_id","user_id")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "user" (
|
||||
"id" serial PRIMARY KEY NOT NULL,
|
||||
"password" varchar(128) NOT NULL,
|
||||
"last_login" timestamp with time zone,
|
||||
"username" text NOT NULL,
|
||||
"email" text,
|
||||
"create_time" timestamp with time zone,
|
||||
"admin_type" text NOT NULL,
|
||||
"auth_token" text,
|
||||
"open_api" boolean DEFAULT false NOT NULL,
|
||||
"open_api_appkey" text,
|
||||
"is_disabled" boolean DEFAULT false NOT NULL,
|
||||
"problem_permission" text NOT NULL,
|
||||
"session_keys" jsonb DEFAULT '[]'::jsonb NOT NULL,
|
||||
"raw_password" varchar(20),
|
||||
"class_name" text,
|
||||
CONSTRAINT "user_username_key" UNIQUE("username")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "problemset_badge" (
|
||||
"id" bigint PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (sequence name "problemset_badge_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 1 CACHE 1),
|
||||
"name" text NOT NULL,
|
||||
"description" text NOT NULL,
|
||||
"icon" text NOT NULL,
|
||||
"condition_type" text NOT NULL,
|
||||
"condition_value" integer NOT NULL,
|
||||
"problemset_id" bigint NOT NULL
|
||||
);
|
||||
--> statement-breakpoint
|
||||
ALTER TABLE "ai_analysis" ADD CONSTRAINT "ai_analysis_user_id_3aa23011_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "announcement" ADD CONSTRAINT "announcement_created_by_id_359ccf50_fk_user_id" FOREIGN KEY ("created_by_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "contest" ADD CONSTRAINT "contest_created_by_id_a763ca7e_fk_user_id" FOREIGN KEY ("created_by_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "contest_announcement" ADD CONSTRAINT "contest_announcement_contest_id_a8cb419f_fk_contest_id" FOREIGN KEY ("contest_id") REFERENCES "public"."contest"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "contest_announcement" ADD CONSTRAINT "contest_announcement_created_by_id_469a14ce_fk_user_id" FOREIGN KEY ("created_by_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "flowchart_submission" ADD CONSTRAINT "flowchart_submission_problem_id_8551edbf_fk_problem_id" FOREIGN KEY ("problem_id") REFERENCES "public"."problem"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "flowchart_submission" ADD CONSTRAINT "flowchart_submission_user_id_225c83e8_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "message" ADD CONSTRAINT "message_recipient_id_2aa5dd76_fk_user_id" FOREIGN KEY ("recipient_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "message" ADD CONSTRAINT "message_sender_id_a2a2e825_fk_user_id" FOREIGN KEY ("sender_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "message" ADD CONSTRAINT "message_submission_id_2fdf8a47_fk_submission_id" FOREIGN KEY ("submission_id") REFERENCES "public"."submission"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "exercise" ADD CONSTRAINT "exercise_tutorial_id_6fd04055_fk_tutorial_id" FOREIGN KEY ("tutorial_id") REFERENCES "public"."tutorial"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset" ADD CONSTRAINT "problemset_created_by_id_01b5197f_fk_user_id" FOREIGN KEY ("created_by_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_problem" ADD CONSTRAINT "problemset_problem_problem_id_fff2d686_fk_problem_id" FOREIGN KEY ("problem_id") REFERENCES "public"."problem"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_problem" ADD CONSTRAINT "problemset_problem_problemset_id_350d17fb_fk_problemset_id" FOREIGN KEY ("problemset_id") REFERENCES "public"."problemset"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_progress" ADD CONSTRAINT "problemset_progress_problemset_id_20a9632e_fk_problemset_id" FOREIGN KEY ("problemset_id") REFERENCES "public"."problemset"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_progress" ADD CONSTRAINT "problemset_progress_user_id_c8041a80_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_submission" ADD CONSTRAINT "problemset_submission_problem_id_5629b105_fk_problem_id" FOREIGN KEY ("problem_id") REFERENCES "public"."problem"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_submission" ADD CONSTRAINT "problemset_submission_problemset_id_85290e17_fk_problemset_id" FOREIGN KEY ("problemset_id") REFERENCES "public"."problemset"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_submission" ADD CONSTRAINT "problemset_submission_submission_id_78e2b807_fk_submission_id" FOREIGN KEY ("submission_id") REFERENCES "public"."submission"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_submission" ADD CONSTRAINT "problemset_submission_user_id_915fc9c6_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "reaction" ADD CONSTRAINT "reaction_problem_id_a7f3b9f3_fk_problem_id" FOREIGN KEY ("problem_id") REFERENCES "public"."problem"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "reaction" ADD CONSTRAINT "reaction_user_id_cfa7f469_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problem" ADD CONSTRAINT "problem_contest_id_328e013a_fk_contest_id" FOREIGN KEY ("contest_id") REFERENCES "public"."contest"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problem" ADD CONSTRAINT "problem_created_by_id_cb362143_fk_user_id" FOREIGN KEY ("created_by_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problem_tags" ADD CONSTRAINT "problem_tags_problem_id_866ecb8d_fk_problem_id" FOREIGN KEY ("problem_id") REFERENCES "public"."problem"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problem_tags" ADD CONSTRAINT "problem_tags_problemtag_id_72d20571_fk_problem_tag_id" FOREIGN KEY ("problemtag_id") REFERENCES "public"."problem_tag"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "submission" ADD CONSTRAINT "submission_contest_id_775716d5_fk_contest_id" FOREIGN KEY ("contest_id") REFERENCES "public"."contest"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "submission" ADD CONSTRAINT "submission_problem_id_76847b55_fk_problem_id" FOREIGN KEY ("problem_id") REFERENCES "public"."problem"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "tutorial" ADD CONSTRAINT "tutorial_created_by_id_07973cab_fk_user_id" FOREIGN KEY ("created_by_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "user_stat" ADD CONSTRAINT "user_stat_user_id_73337fc0_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "user_achievement" ADD CONSTRAINT "user_achievement_achievement_id_29db600d_fk_achievement_id" FOREIGN KEY ("achievement_id") REFERENCES "public"."achievement"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "user_achievement" ADD CONSTRAINT "user_achievement_user_id_b8ec7d6a_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "user_badge" ADD CONSTRAINT "user_badge_badge_id_92a983e9_fk_problemset_badge_id" FOREIGN KEY ("badge_id") REFERENCES "public"."problemset_badge"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "user_badge" ADD CONSTRAINT "user_badge_user_id_a286d718_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "user_profile" ADD CONSTRAINT "user_profile_user_id_8fdce8e2_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "acm_contest_rank" ADD CONSTRAINT "acm_contest_rank_contest_id_21030ccd_fk_contest_id" FOREIGN KEY ("contest_id") REFERENCES "public"."contest"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "acm_contest_rank" ADD CONSTRAINT "acm_contest_rank_user_id_40391ab2_fk_user_id" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "problemset_badge" ADD CONSTRAINT "problemset_badge_problemset_id_6cb6c74f_fk_problemset_id" FOREIGN KEY ("problemset_id") REFERENCES "public"."problemset"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
CREATE INDEX "ai_analysis_user_id_3aa23011" ON "ai_analysis" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "announcement_created_by_id_359ccf50" ON "announcement" USING btree ("created_by_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "announcement_list_idx" ON "announcement" USING btree ("visible" bool_ops,"top" bool_ops,"create_time" bool_ops);--> statement-breakpoint
|
||||
CREATE INDEX "contest_created_by_id_a763ca7e" ON "contest" USING btree ("created_by_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "contest_announcement_contest_id_a8cb419f" ON "contest_announcement" USING btree ("contest_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "contest_announcement_created_by_id_469a14ce" ON "contest_announcement" USING btree ("created_by_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "flowchart_problem_time_idx" ON "flowchart_submission" USING btree ("problem_id" int4_ops,"create_time" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "flowchart_status_idx" ON "flowchart_submission" USING btree ("status" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "flowchart_submission_id_0dbfc4f9_like" ON "flowchart_submission" USING btree ("id" text_pattern_ops);--> statement-breakpoint
|
||||
CREATE INDEX "flowchart_submission_problem_id_8551edbf" ON "flowchart_submission" USING btree ("problem_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "flowchart_submission_user_id_225c83e8" ON "flowchart_submission" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "flowchart_user_time_idx" ON "flowchart_submission" USING btree ("user_id" int4_ops,"create_time" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "message_recipient_id_2aa5dd76" ON "message" USING btree ("recipient_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "message_recipient_time_idx" ON "message" USING btree ("recipient_id" timestamptz_ops,"create_time" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "message_sender_id_a2a2e825" ON "message" USING btree ("sender_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "message_submission_id_2fdf8a47" ON "message" USING btree ("submission_id" text_ops);--> statement-breakpoint
|
||||
CREATE INDEX "message_submission_id_2fdf8a47_like" ON "message" USING btree ("submission_id" text_pattern_ops);--> statement-breakpoint
|
||||
CREATE INDEX "exercise_tutorial_id_6fd04055" ON "exercise" USING btree ("tutorial_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_created_by_id_01b5197f" ON "problemset" USING btree ("created_by_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_problem_problem_id_fff2d686" ON "problemset_problem" USING btree ("problem_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_problem_problemset_id_350d17fb" ON "problemset_problem" USING btree ("problemset_id" int8_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_progress_problemset_id_20a9632e" ON "problemset_progress" USING btree ("problemset_id" int8_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_progress_user_id_c8041a80" ON "problemset_progress" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset__problem_1f39fa_idx" ON "problemset_submission" USING btree ("problemset_id" int4_ops,"user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset__problem_22f053_idx" ON "problemset_submission" USING btree ("problemset_id" int8_ops,"problem_id" int8_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset__user_id_2f1501_idx" ON "problemset_submission" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_submission_problem_id_5629b105" ON "problemset_submission" USING btree ("problem_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_submission_problemset_id_85290e17" ON "problemset_submission" USING btree ("problemset_id" int8_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_submission_submission_id_78e2b807" ON "problemset_submission" USING btree ("submission_id" text_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_submission_submission_id_78e2b807_like" ON "problemset_submission" USING btree ("submission_id" text_pattern_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_submission_user_id_915fc9c6" ON "problemset_submission" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "reaction_problem_id_a7f3b9f3" ON "reaction" USING btree ("problem_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "reaction_problem_type_idx" ON "reaction" USING btree ("problem_id" int4_ops,"type" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "reaction_user_id_cfa7f469" ON "reaction" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problem__id_919b1d80" ON "problem" USING btree ("_id" text_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problem_contest_id_328e013a" ON "problem" USING btree ("contest_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problem_contest_visible_idx" ON "problem" USING btree ("contest_id" bool_ops,"visible" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problem_created_by_id_cb362143" ON "problem" USING btree ("created_by_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problem_visible_idx" ON "problem" USING btree ("visible" bool_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problem_tags_problem_id_866ecb8d" ON "problem_tags" USING btree ("problem_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problem_tags_problemtag_id_72d20571" ON "problem_tags" USING btree ("problemtag_id" int4_ops);--> statement-breakpoint
|
||||
CREATE UNIQUE INDEX "problem_tag_name_ci_unique" ON "problem_tag" USING btree (lower(name) text_ops);--> statement-breakpoint
|
||||
CREATE INDEX "contest_create_time_idx" ON "submission" USING btree ("contest_id" timestamptz_ops,"create_time" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problem_user_idx" ON "submission" USING btree ("problem_id" int4_ops,"user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "submission_contest_id_775716d5" ON "submission" USING btree ("contest_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "submission_problem_id_76847b55" ON "submission" USING btree ("problem_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "submission_result_37e2f67a" ON "submission" USING btree ("result" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "submission_user_id_3779a8c1" ON "submission" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "user_create_time_idx" ON "submission" USING btree ("user_id" int4_ops,"create_time" timestamptz_ops);--> statement-breakpoint
|
||||
CREATE INDEX "tutorial_created_by_id_07973cab" ON "tutorial" USING btree ("created_by_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "user_achievement_achievement_id_29db600d" ON "user_achievement" USING btree ("achievement_id" int8_ops);--> statement-breakpoint
|
||||
CREATE INDEX "user_achievement_user_id_b8ec7d6a" ON "user_achievement" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "user_achv_notified_idx" ON "user_achievement" USING btree ("user_id" int4_ops,"notified" bool_ops);--> statement-breakpoint
|
||||
CREATE INDEX "user_achv_time_idx" ON "user_achievement" USING btree ("user_id" int4_ops,"unlock_time" timestamptz_ops);--> statement-breakpoint
|
||||
CREATE INDEX "user_badge_badge_id_92a983e9" ON "user_badge" USING btree ("badge_id" int8_ops);--> statement-breakpoint
|
||||
CREATE INDEX "user_badge_user_id_a286d718" ON "user_badge" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "acm_contest_rank_contest_id_21030ccd" ON "acm_contest_rank" USING btree ("contest_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "acm_contest_rank_user_id_40391ab2" ON "acm_contest_rank" USING btree ("user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "acm_rank_contest_user_idx" ON "acm_contest_rank" USING btree ("contest_id" int4_ops,"user_id" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "acm_rank_order_idx" ON "acm_contest_rank" USING btree ("contest_id" int4_ops,"accepted_number" int4_ops,"total_time" int4_ops);--> statement-breakpoint
|
||||
CREATE INDEX "problemset_badge_problemset_id_6cb6c74f" ON "problemset_badge" USING btree ("problemset_id" int8_ops);
|
||||
*/
|
||||
Reference in New Issue
Block a user