Blitz.js で、
% prisma migrate dev
をしたときに、生成される migration.sql を比較してみました。
以下のファイルを編集して mysql, postgres, sqlite を切り替えています。
db/schema.prisma
.env.local
こうしてみると、微妙に違いがありましょね。同じ User デーブルなのに。
Rails のマイグレーションのように共通にできないのでしょうか?
mysql
-- CreateTable CREATE TABLE `User` ( `id` INTEGER NOT NULL AUTO_INCREMENT, `createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), `updatedAt` DATETIME(3) NOT NULL, `name` VARCHAR(191), `email` VARCHAR(191) NOT NULL, `hashedPassword` VARCHAR(191), `role` VARCHAR(191) NOT NULL DEFAULT 'USER', UNIQUE INDEX `User.email_unique`(`email`), PRIMARY KEY (`id`) ) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
postgres
-- CreateTable CREATE TABLE "User" ( "id" SERIAL NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" TIMESTAMP(3) NOT NULL, "name" TEXT, "email" TEXT NOT NULL, "hashedPassword" TEXT, "role" TEXT NOT NULL DEFAULT E'USER', PRIMARY KEY ("id") );
sqlite
-- CreateTable CREATE TABLE "User" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" DATETIME NOT NULL, "name" TEXT, "email" TEXT NOT NULL, "hashedPassword" TEXT, "role" TEXT NOT NULL DEFAULT 'USER' );
コメント