[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] libro sui db, un consiglio



jack wrote:

durante il mio corso di studi non ho incontrato i db e, oggi, me ne spiace
dato che, sebbene al momento non ci lavori, è un argomento che mi interessa

potreste, per favore, consigliarmi un buon libro sui db che ne tratti gli
aspetti teorici e pratici, magari anche con riferimenti a dbms free?

Immagino che con databse intenda i database relazionali.

Premetto che c'è uno standard SQL, ma, da quel che so io, non c'è un database che lo segue al 100%. Forse il più rispettoso è PostgreSQL.

Lo standard non è seguito per vari motivi tra i quali:
* mancano delle istruzioni fondamentali che risultano indispensabili per l'uso di un database moderno. Quindi ogni "produttore" di db fa quel che vuole in questi casi, aggiungendo istruzioni fuori standard * alcune cose vengono sostituite per rendere più "semplice" la creazione delle query (però la semplicità di una cosa è data dalla conoscenza e dall'uso della stessa)

Quindi ti troverai le istruzioni di base che bene o male sono seguite da tutti, con magari qualche eccezione particolare sulla sintassi, con aggiunta o lievi modifiche, ma poi andando su cose un po' più complesse puoi trovarti sintassi completamente differenti da quanto stabilito dallo standard.

Quello che ti consiglio io è:

1) avere un'idea di cos'è un database, quali sono gli elementi fondamentali di un database e come costruirti una struttura consistente (tabelle, chiavi primarie, chiavi esterne, ...). Operazione che puoi fare in pochi giorni trovandoti un libro universitario o un'introduzione sui database.

2) scegliere un database e iniziare a fare un po' di esercizi. La pratica è molto differente dalla teoria e se vuoi imparare bene devi lavorare, soprattutto usare database di dimensioni non banali, perché queste ti permettono di capire i veri vantaggi/svantaggi che hai scegliendo una cosa al posto di un'altra. Per questa parte ci possono volere mesi prima di impratichirti su alcuni aspetti fondamentali. Fondamentale è anche partecipare o avere accesso ad un database reale, perché è solo qui che effettivamente puoi affrontare problematiche che su database che ti crei per studio neanche ci pensi

Io ti consiglio l'uso di PostgreSQL perché:
1) è software libero
2) è completo e veloce
3) segue molto da vicino lo standard SQL
4) ti permette di usare uno o più linguaggi di programmazione interna (store procedure, ...) tra cui: un simile basic, c, perl, ... 5) ha limiti davvero elevati. Magari non ti interessa avere una tabella di un numero di record immane, ma poter avere nomi di elementi del database molto lunghi secondo me è importante (sui db, anche commerciali, di solito questi limiti sono molto bassi) 6) c'è una documentazione abbastanza ben fatta, l'unica cosa che probabilmente bisogna avere prima un'infarinatura di base per poterla usare con proficuo 7) è anche ad oggetti, anche se per ora non ho mai sfruttato questa potenzialità non indifferente

Infine: ci sono sostenitori sulla fatto che i database relazionali sono vetusti e ormai hanno i giorni contati come diffusione di massa:
$ apt-cache show nosql

questi sono i sistemi che usano i grossi siti che hanno milioni di accessi e modifiche contemporanee.

Ciao
Davide

--
Dizionari: http://linguistico.sourceforge.net/wiki
Perché microsoft continua a compiere azioni illegali?:
http://linguistico.sf.net/wiki/doku.php?id=traduzioni:ms_illegal
GNU/Linux User: 302090: http://counter.li.org
Non autorizzo la memorizzazione del mio indirizzo su outlook


Reply to: