You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: ORM-1247 fix consistency issues across envs in created migration output (#5545)
Had to change the name of the model in this case to ensure that
consistent sql is produced between different environments. In particular
under mysqls `lower_case_table_names = 1` setting (which is the default
under windows but not linux) the casing of the table name in the `ALTER
TABLE` statements would otherwise change between linux and windows based
tests.
ALTER TABLE "Cat" ADD COLUMN "externalTableId" INTEGER;
448
+
ALTER TABLE "cat" ADD COLUMN "externalTableId" INTEGER;
449
449
450
450
-- AddForeignKey
451
-
ALTER TABLE "Cat" ADD CONSTRAINT "Cat_externalTableId_fkey" FOREIGN KEY ("externalTableId") REFERENCES "ExternalTableA"("id") ON DELETE SET NULL ON UPDATE CASCADE;
451
+
ALTER TABLE "cat" ADD CONSTRAINT "cat_externalTableId_fkey" FOREIGN KEY ("externalTableId") REFERENCES "ExternalTableA"("id") ON DELETE SET NULL ON UPDATE CASCADE;
452
452
"#]]
453
453
}elseif is_mysql {
454
454
expect![[r#"
455
455
-- AlterTable
456
-
ALTER TABLE `Cat` ADD COLUMN `externalTableId` INTEGER NULL;
456
+
ALTER TABLE `cat` ADD COLUMN `externalTableId` INTEGER NULL;
457
457
458
458
-- AddForeignKey
459
-
ALTER TABLE `Cat` ADD CONSTRAINT `Cat_externalTableId_fkey` FOREIGN KEY (`externalTableId`) REFERENCES `ExternalTableA`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
459
+
ALTER TABLE `cat` ADD CONSTRAINT `cat_externalTableId_fkey` FOREIGN KEY (`externalTableId`) REFERENCES `ExternalTableA`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
460
460
"#]]
461
461
}elseif is_sqlite {
462
462
expect![[r#"
463
463
-- RedefineTables
464
464
PRAGMA defer_foreign_keys=ON;
465
465
PRAGMA foreign_keys=OFF;
466
-
CREATE TABLE "new_Cat" (
466
+
CREATE TABLE "new_cat" (
467
467
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
468
468
"name" TEXT NOT NULL,
469
469
"externalTableId" INTEGER,
470
-
CONSTRAINT "Cat_externalTableId_fkey" FOREIGN KEY ("externalTableId") REFERENCES "ExternalTableA" ("id") ON DELETE SET NULL ON UPDATE CASCADE
470
+
CONSTRAINT "cat_externalTableId_fkey" FOREIGN KEY ("externalTableId") REFERENCES "ExternalTableA" ("id") ON DELETE SET NULL ON UPDATE CASCADE
471
471
);
472
-
INSERT INTO "new_Cat" ("id", "name") SELECT "id", "name" FROM "Cat";
473
-
DROP TABLE "Cat";
474
-
ALTER TABLE "new_Cat" RENAME TO "Cat";
472
+
INSERT INTO "new_cat" ("id", "name") SELECT "id", "name" FROM "cat";
ALTER TABLE [dbo].[Cat] ADD [externalTableId] INT;
485
+
ALTER TABLE [dbo].[cat] ADD [externalTableId] INT;
486
486
487
487
-- AddForeignKey
488
-
ALTER TABLE [dbo].[Cat] ADD CONSTRAINT [Cat_externalTableId_fkey] FOREIGN KEY ([externalTableId]) REFERENCES [dbo].[ExternalTableA]([id]) ON DELETE SET NULL ON UPDATE CASCADE;
488
+
ALTER TABLE [dbo].[cat] ADD CONSTRAINT [cat_externalTableId_fkey] FOREIGN KEY ([externalTableId]) REFERENCES [dbo].[ExternalTableA]([id]) ON DELETE SET NULL ON UPDATE CASCADE;
0 commit comments