🗃️ add unique indexes to site & resource labels in sqlite

This commit is contained in:
Fred KISSIE
2026-05-11 18:28:40 +02:00
parent 14e1a119d3
commit a0759a79a1

View File

@@ -194,35 +194,43 @@ export const labels = sqliteTable("labels", {
.notNull() .notNull()
}); });
export const siteLabels = sqliteTable("siteLabels", { export const siteLabels = sqliteTable(
siteLabelId: integer("siteLabelId").primaryKey({ autoIncrement: true }), "siteLabels",
siteId: integer("siteId") {
.references(() => sites.siteId, { siteLabelId: integer("siteLabelId").primaryKey({ autoIncrement: true }),
onDelete: "cascade" siteId: integer("siteId")
}) .references(() => sites.siteId, {
.notNull(), onDelete: "cascade"
labelId: integer("labelId") })
.references(() => labels.labelId, { .notNull(),
onDelete: "cascade" labelId: integer("labelId")
}) .references(() => labels.labelId, {
.notNull() onDelete: "cascade"
}); })
.notNull()
},
(t) => [unique("site_label_uniq").on(t.siteId, t.labelId)]
);
export const resourceLabels = sqliteTable("resourceLabels", { export const resourceLabels = sqliteTable(
resourceLabelId: integer("resourceLabelId").primaryKey({ "resourceLabels",
autoIncrement: true {
}), resourceLabelId: integer("resourceLabelId").primaryKey({
resourceId: integer("resourceId") autoIncrement: true
.references(() => resources.resourceId, { }),
onDelete: "cascade" resourceId: integer("resourceId")
}) .references(() => resources.resourceId, {
.notNull(), onDelete: "cascade"
labelId: integer("labelId") })
.references(() => labels.labelId, { .notNull(),
onDelete: "cascade" labelId: integer("labelId")
}) .references(() => labels.labelId, {
.notNull() onDelete: "cascade"
}); })
.notNull()
},
(t) => [unique("resource_label_uniq").on(t.resourceId, t.labelId)]
);
export const targets = sqliteTable("targets", { export const targets = sqliteTable("targets", {
targetId: integer("targetId").primaryKey({ autoIncrement: true }), targetId: integer("targetId").primaryKey({ autoIncrement: true }),