SQL

CREATE TABLE "TenantFeatures"  (
  "Id" INTEGER NOT NULL CONSTRAINT "PK_TenantFeatures" PRIMARY KEY AUTOINCREMENT,
  "TenantId" INTEGER NOT NULL,
  "FeatureId" INTEGER NOT NULL,
  "IsEnabled" INTEGER NOT NULL,
  "EnabledAt" TEXT NOT NULL,
  "DisabledAt" TEXT NULL,
  CONSTRAINT "FK_TenantFeatures_Features_FeatureId" FOREIGN KEY ("FeatureId") REFERENCES "Features" ("Id") ON DELETE CASCADE,
  CONSTRAINT "FK_TenantFeatures_Tenants_TenantId" FOREIGN KEY ("TenantId") REFERENCES "Tenants" ("Id") ON DELETE CASCADE
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
Id INTEGER Rename | Drop
TenantId INTEGER Rename | Drop
FeatureId INTEGER Rename | Drop
IsEnabled INTEGER Rename | Drop
EnabledAt TEXT Rename | Drop
DisabledAt TEXT Rename | Drop

Foreign Keys

Column Destination
TenantId Tenants.Id
FeatureId Features.Id

+ Add index

Indexes

Name Columns Unique SQL Drop?
IX_TenantFeatures_FeatureId FeatureId SQL
CREATE INDEX "IX_TenantFeatures_FeatureId"
ON "TenantFeatures" ("FeatureId")
Drop
IX_TenantFeatures_IsEnabled IsEnabled SQL
CREATE INDEX "IX_TenantFeatures_IsEnabled"
ON "TenantFeatures" ("IsEnabled")
Drop
IX_TenantFeatures_TenantId_FeatureId
  • TenantId
  • FeatureId
SQL
CREATE UNIQUE INDEX "IX_TenantFeatures_TenantId_FeatureId"
ON "TenantFeatures" ("TenantId", "FeatureId")
Drop