35 lines
1.8 KiB
SQL
35 lines
1.8 KiB
SQL
/*
|
|
Warnings:
|
|
|
|
- The primary key for the `ChatChannel` table will be changed. If it partially fails, the table could be left without primary key constraint.
|
|
- You are about to alter the column `id` on the `ChatChannel` table. The data in that column could be lost. The data in that column will be cast from `String` to `Int`.
|
|
- You are about to alter the column `channelId` on the `ChatMessage` table. The data in that column could be lost. The data in that column will be cast from `String` to `Int`.
|
|
- Added the required column `createdAt` to the `ChatMessage` table without a default value. This is not possible if the table is not empty.
|
|
|
|
*/
|
|
-- RedefineTables
|
|
PRAGMA defer_foreign_keys=ON;
|
|
PRAGMA foreign_keys=OFF;
|
|
CREATE TABLE "new_ChatChannel" (
|
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
"name" TEXT NOT NULL
|
|
);
|
|
INSERT INTO "new_ChatChannel" ("id", "name") SELECT "id", "name" FROM "ChatChannel";
|
|
DROP TABLE "ChatChannel";
|
|
ALTER TABLE "new_ChatChannel" RENAME TO "ChatChannel";
|
|
CREATE UNIQUE INDEX "ChatChannel_name_key" ON "ChatChannel"("name");
|
|
CREATE TABLE "new_ChatMessage" (
|
|
"id" TEXT NOT NULL PRIMARY KEY,
|
|
"userId" TEXT NOT NULL,
|
|
"channelId" INTEGER NOT NULL,
|
|
"content" TEXT NOT NULL DEFAULT '',
|
|
"createdAt" DATETIME NOT NULL,
|
|
CONSTRAINT "ChatMessage_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
|
CONSTRAINT "ChatMessage_channelId_fkey" FOREIGN KEY ("channelId") REFERENCES "ChatChannel" ("id") ON DELETE CASCADE ON UPDATE CASCADE
|
|
);
|
|
INSERT INTO "new_ChatMessage" ("channelId", "content", "id", "userId") SELECT "channelId", "content", "id", "userId" FROM "ChatMessage";
|
|
DROP TABLE "ChatMessage";
|
|
ALTER TABLE "new_ChatMessage" RENAME TO "ChatMessage";
|
|
PRAGMA foreign_keys=ON;
|
|
PRAGMA defer_foreign_keys=OFF;
|