Diciamo che stai modellando un'entità che ha molti attributi (2400+), molto maggiore del limite fisico su un determinato motore di database (ad esempio ~ 1000 SQL Server). Non sapendo nulla dell'importanza relativa di questi punti dati (quali sono i più caldi/usati più spesso) oltre alle chiavi dominio/candidato, come vorresti implementarlo?Come implementeresti un "tavolo" molto ampio?
A) EAV. (boo ... Strumenti relazionali nativi buttati fuori dalla finestra.)
B) Andare dritto. La prima tabella ha una chiave primaria e 1000 colonne, fino al limite. La tabella successiva è 1000, estraneo con chiave per il primo. L'ultimo tavolo è il rimanente 400, anche con chiave esterna.
C) Striscia uniformemente tra le tabelle ceil(n/limit)
. Ogni tabella ha un numero pari di colonne, chiave esterna per la prima tabella. 800, 800, 800.
D) Qualcos'altro ...
E perché?
Modifica: Questa è più una questione filosofica/generica, non legata a limiti o motori specifici.
Modifica^2: come molti hanno sottolineato, i dati probabilmente non sono stati normalizzati. Come al solito, i vincoli commerciali all'epoca rendevano impossibile la ricerca approfondita.
Mi ha avvertito che era una questione di opinione. Ehh, non lo so. –
Sì, ho cancellato la mia query "perché CW" quando ho visto la modifica! –