Discussione:
(... OT ?) che ne pensate dei concetti sottostanti la "normalizzazione" dei database ?
Aggiungi Risposta
r***@gmail.com
2018-12-03 12:07:31 UTC
Rispondi
Permalink
ve lo chiedo perchè studiandoli ho notato che cè un po'
(forse un BEL po') di matematica dietro quei concetti.

PERO' (sempre che abbia capito bene, per carità ...)
mi sono anche accorto che cè anche qualcosa di ...
come dire ? Di "approssimativo" forse ? No, forse
meglio dire di "forzato", non saprei.

Per es. in questo senso :

per es. quando si dice debba esservi una dipendenza
funzionale tra valore della chiave e ogni altro campo
di una determinata tabella.

Allora supponiamo di avere una tabella con un campo
soltanto, diciamo ... che ne so ... Citta'.

Ma io se costruisco un altro campo che assegna a ogni
record (cioe a ogni citta') un numero a completamente
a caso cavolo PURCHE' tale che ogni città abbia il
suo e solo lei abbia quello voilà : c'ho la dipendenza
funzionale.

Quindi ... (mi riesce difficile spiegarmi) mentre
studiando vi mettono le cose in un modo che SEMBRA
dover esistere una dipendenza funzionale AVENTE
SIGNIFICATO
(
per es. quella che vi sarebbe se per ogni città si
individuasse un "qualcosa" di caratteristico di quella
citta che fa da chiave, per es ... ecco : la esatta
posizione geografica in termini di coordinate
)
per cui uno (io) si sbatte a morte per capire come farla
... invece poi capisce che non è cosi.

mmmmh

Mi sa che non è chiaro quello che ho detto :-)
Karma Explorer
2018-12-03 13:57:01 UTC
Rispondi
Permalink
Post by r***@gmail.com
Ma io se costruisco un altro campo che assegna a ogni
record (cioe a ogni citta') un numero a completamente
a caso cavolo PURCHE' tale che ogni città abbia il
suo e solo lei abbia quello voilà : c'ho la dipendenza
funzionale.
E' quello che fai normalmente quando decidi che la
chiave primaria di una tabella è un ID generato
automaticamente
Post by r***@gmail.com
SEMBRA dover esistere una dipendenza funzionale
AVENTE SIGNIFICATO
Può far stano ma effettivamente è così.

Dipendenza funzionale implica solo quello che stabilisce
la definizione e nient'altro. Il significato semantico
dei dati inseriti in un database lo conosci tu. La cosa
importante è che il tutto fili anche se quei dati
fossero del tutto privi di significato.

Immagina delle tabelle con dei campi testuali completamente
criptati dove le colonne hanno nomi non significativi.
Tu non hai modo di decifrarli ma conosci le relazioni e
vincoli tra le chiavi delle varie tabelle e puoi comunque
estrarre i dati facendo dei join complessi a piacere.

Poi passi questi risultati a qualcun altro che invece è in
grado di decrittarli.

Tu ignori completamente cosa contenga il database e sai solo
che è in terza forma normale. Chi riceve l'output delle tue
query non ha idea di come i dati siano memorizzati ma per
lui hanno perfettamente significato.
Giovanni
2018-12-03 14:16:25 UTC
Rispondi
Permalink
...

Ma, scusate, sta "dipendenza funzionale"
al fin fine, non significa che
ad un certo A deve corrispondere UNIVOCAMENTE
un certo B ?
Karma Explorer
2018-12-03 14:40:14 UTC
Rispondi
Permalink
Post by Giovanni
...
Ma, scusate, sta "dipendenza funzionale"
al fin fine, non significa che
ad un certo A deve corrispondere UNIVOCAMENTE
un certo B ?
Alla fin fine, sì. Il tuo codice fiscale
determina univocamente il tuo fascicolo
sanitario e la tua dichiarazione dei redditi.

Ovviamente all'interno del modello relazionale
le cose sono più complesse.
r***@gmail.com
2018-12-03 15:04:50 UTC
Rispondi
Permalink
Post by Karma Explorer
Post by r***@gmail.com
Ma io se costruisco un altro campo che assegna a ogni
record (cioe a ogni citta') un numero a completamente
a caso cavolo PURCHE' tale che ogni città abbia il
suo e solo lei abbia quello voilà : c'ho la dipendenza
funzionale.
E' quello che fai normalmente quando decidi che la
chiave primaria di una tabella è un ID generato
automaticamente
Post by r***@gmail.com
SEMBRA dover esistere una dipendenza funzionale
AVENTE SIGNIFICATO
Può far stano ma effettivamente è così.
Dipendenza funzionale implica solo quello che stabilisce
la definizione e nient'altro. Il significato semantico
dei dati inseriti in un database lo conosci tu. La cosa
importante è che il tutto fili anche se quei dati
fossero del tutto privi di significato.
Immagina delle tabelle con dei campi testuali completamente
criptati dove le colonne hanno nomi non significativi.
Tu non hai modo di decifrarli ma conosci le relazioni e
vincoli tra le chiavi delle varie tabelle e puoi comunque
estrarre i dati facendo dei join complessi a piacere.
Poi passi questi risultati a qualcun altro che invece è in
grado di decrittarli.
Tu ignori completamente cosa contenga il database e sai solo
che è in terza forma normale. Chi riceve l'output delle tue
query non ha idea di come i dati siano memorizzati ma per
lui hanno perfettamente significato.
e allora è proprio come pensavo

Beh ... grazie. Molte grazie per la risposta.

Loading...