mirror of
https://github.com/umami-software/umami.git
synced 2026-02-20 12:35:38 +01:00
Restructure Cockroachdb migrations
Split the migrations to match the other databases. Avoid unsafe BigInt values by using sequences to increment id fields.
This commit is contained in:
parent
33422d8a6c
commit
2c7fc4108d
5 changed files with 277 additions and 166 deletions
68
db/cockroachdb/migrations/02_add_event_data/migration.sql
Normal file
68
db/cockroachdb/migrations/02_add_event_data/migration.sql
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
-- DropForeignKey
|
||||
ALTER TABLE "event" DROP CONSTRAINT "event_session_id_fkey";
|
||||
ALTER TABLE "event" DROP CONSTRAINT "event_website_id_fkey";
|
||||
|
||||
-- RenameIndex
|
||||
ALTER INDEX "event_pkey" RENAME TO "event_old_pkey";
|
||||
ALTER INDEX "event_created_at_idx" RENAME TO "event_old_created_at_idx";
|
||||
ALTER INDEX "event_session_id_idx" RENAME TO "event_old_session_id_idx";
|
||||
ALTER INDEX "event_website_id_idx" RENAME TO "event_old_website_id_idx";
|
||||
|
||||
-- RenameTable
|
||||
ALTER TABLE "event" RENAME TO "_event_old";
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "event" (
|
||||
"event_id" INT8 NOT NULL DEFAULT nextval('event_seq'),
|
||||
"website_id" INT8 NOT NULL,
|
||||
"session_id" INT8 NOT NULL,
|
||||
"created_at" TIMESTAMPTZ(6) DEFAULT CURRENT_TIMESTAMP,
|
||||
"url" STRING(500) NOT NULL,
|
||||
"event_name" STRING(50) NOT NULL,
|
||||
|
||||
CONSTRAINT "event_pkey" PRIMARY KEY ("event_id")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "event_created_at_idx" ON "event"("created_at");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "event_session_id_idx" ON "event"("session_id");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "event_website_id_idx" ON "event"("website_id");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "event" ADD CONSTRAINT "event_session_id_fkey" FOREIGN KEY ("session_id") REFERENCES "session"("session_id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "event" ADD CONSTRAINT "event_website_id_fkey" FOREIGN KEY ("website_id") REFERENCES "website"("website_id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
CREATE SEQUENCE event_data_seq;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "event_data" (
|
||||
"event_data_id" INT8 NOT NULL DEFAULT nextval('event_data_seq'),
|
||||
"event_id" INT8 NOT NULL,
|
||||
"event_data" JSONB NOT NULL,
|
||||
|
||||
CONSTRAINT "event_data_pkey" PRIMARY KEY ("event_data_id")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "event_data_event_id_key" ON "event_data"("event_id");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "event_data" ADD CONSTRAINT "event_data_event_id_fkey" FOREIGN KEY ("event_id") REFERENCES "event"("event_id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
-- RenameIndex
|
||||
ALTER INDEX IF EXISTS "account.username_unique" RENAME TO "account_username_key";
|
||||
|
||||
-- RenameIndex
|
||||
ALTER INDEX IF EXISTS "session.session_uuid_unique" RENAME TO "session_session_uuid_key";
|
||||
|
||||
-- RenameIndex
|
||||
ALTER INDEX IF EXISTS "website.share_id_unique" RENAME TO "website_share_id_key";
|
||||
|
||||
-- RenameIndex
|
||||
ALTER INDEX IF EXISTS "website.website_uuid_unique" RENAME TO "website_website_uuid_key";
|
||||
Loading…
Add table
Add a link
Reference in a new issue