28 messaggi dal 30 marzo 2001
salve ho un db di grossissime (ma.... ho un po' esagerato) dimensioni in sqlServer2000.
Il problema è questo ci sono circa 20 categorie, dalla prima pagina si seleziona una categoria e poi viene aperta la pagina categoria.asp con l'id opportuno. a sua volta ogni prodotto ha diversi elementi collegati.
io vorrei sapere come è meglio gestire la cosa dal punto di vista delle prestazioni del db
1) create una tabella che conterrà i prodotti "primari" e quindi dalla pagina categoria.asp verranno estratti i records (paginati) che hanno l'id della categoria.
inoltre sarà presente un'altra tabella che conterrà tutti gli elementì collegati agli elementi primari
2) la seconda soluzione è quella di creare 20 tabelle una per categoria e altre 20 tabelle per inserire gli elementi collegati a quelli primari anch'essi suddivisi per categoria.

se avete altre idee ditemele pure
gradirei essere consigliato da chi ha esperienza con db in internet di grosse dimensioni
grazie

praticamente il problema potrebbe essere simile a quello che hanno i gestori di grossi forum con centinaia di migliaia di records


6 messaggi dal 09 marzo 2002
Ciao,
penso che la soluzione migliore sia quella di creare una tabella primaria con le categorie ed una secondaria con i prodotti.
Le due tabelle devono stare in join 1-molti sull' id (chiave primaria della tabella categorie).
Ciò significa che la tabella prodotti deve avere un campo "idcategoria" compatibile con la chiave primaria della tabella categorie.
Questa soluzione ti permette di lavorare in base alle regole di "normalizzazione" che permettono di risparmiare spazio.

Attenzione xò!
Se un prodotto può appartenere a più categorie devi usare una tabella intermedia che abbia almeno due campi:
l'idcategoria e l'idprodotto
e poi devi fare un join 1-molti e molti-1 in modo tale da permettere l'appartenenza di un prodotto a più categorie...

Ciao!


Dario Briguglio

Dario Briguglio

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.