|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Dec 2005
Messaggi: 42
|
[DBMS/MySQL] progettazione tabelle
Ciao a tutti,
Per esigenze di lavoro sto progettando un DB che deve gestire x utenti e relative password; ogni utente inserirà un numero y di prenotazioni, composte da z parametri e deve poter visualizzare lo storico. Il dubbio che ho è relativo alle tabelle. Meglio creare x tabelle (una per ogni utente) le cui righe saranno le y prenotazioni oppure creare una tabella per gli utenti ed una tabella per le prenotazioni? ho cercato di valutare vantaggi e svantaggi (pur non sapendone molto di DB). La prima ipotesi mi consente dei tempi di accesso più rapidi ai record, di contro ho la necessaria creazione di x tabelle. La seconda ipotesi mi consente di creare solamente due tabelle grandi, però le select sarebbero più laboriose (sempre se non dico fesserie). Che mi consigliate? Grazie in anticipo |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Una tabella utenti e una tabella prenotazioni.
L'altra alternativa non e' presente come ipotesi nella progettazione di basi di dati, per diversi motivi. Diventa ingestibile a livello di codice e incosistente a livello di relazione (A che tabella puntare una eventuale le foreign key verso una specifica prenotazione?). Occorrebbe inoltre creare e cancellare tabelle a seconda del numero degli utenti, e per rispondere a domande globali (ES: Statistiche o sommatorie) le query sarebbero ingestibili. Le select sulle 2 tabelle non sono cosi' laboriose. Per partitzionare le query esattamente come nel caso precedente e' sufficiente mettere una clausola "WHERE codiceutente=xyz".
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Dec 2005
Messaggi: 42
|
si esatto, la seconda mi sembrava più elegante e funzionale.
Ottimo! come ti ho detto non è che ci capisco molto di DB grazie ancora packllama |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:23.



















