Ho la seguente tabella e non riesco a capire come gestire i campi '
componente_XX' che possono essere riempiti da numeri oppure possono restare vuoti. Se creo il classico metodo con 18 punti interrogativi ovviamente non funziona.
CREATE TABLE IF NOT EXISTS componenti (
id_macchina BIGINT NOT NULL,
id_elemento BIGINT NOT NULL,
codice BIGINT NOT NULL,
componente_1 BIGINT,
componente_2 BIGINT,
componente_3 BIGINT,
componente_4 BIGINT,
componente_5 BIGINT,
componente_6 BIGINT,
componente_7 BIGINT,
componente_8 BIGINT,
componente_9 BIGINT,
componente_10 BIGINT,
componente_11 BIGINT,
componente_12 BIGINT,
componente_13 BIGINT,
componente_14 BIGINT,
componente_15 BIGINT,
CONSTRAINT componenti_fkb_macchine FOREIGN KEY (id_macchina) REFERENCES macchine (id) ON DELETE CASCADE,
CONSTRAINT componenti_fka_elementi FOREIGN KEY (id_elemento) REFERENCES elementi (id) ON DELETE CASCADE,
CONSTRAINT componenti_uk UNIQUE (id_macchina, codice),
CONSTRAINT componenti_pk PRIMARY KEY(id_macchina, id_elemento)
);