![]() |
Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Basi di dati ~ comunicazione digitale (http://www.dsy.it/forum/forumdisplay.php?forumid=108)
-- Chiavi e super-chiavi (http://www.dsy.it/forum/showthread.php?threadid=31814)
Chiavi e super-chiavi
Ciao a tutti...mi sono impegolato in questa definizione:
"Un insieme X ⊆UR di attributi di R e` chiave di R se verifica entrambe le seguenti proprieta`:
1. qualsiasi sialo stato di R, non esistono due tuple distinte di R che abbiano lo stesso valore per tutti gli attributi in X
2. nessun sottoinsieme proprio di X verifica la proprieta` (1)
Un insieme di attributi che verifica la proprieta` (1) ma non la proprieta` (2), e` detto super-chiave di R "
mi potreste chiarire con un esempio pratico???
grazie
Ciao
Se hai R (A,B,C,D) con chiave (A,B) vuol dire che non troverai mai nessuna coppia di tuple distinte che abbia l'accoppiata A,B uguale,questo per definizione. La seconda proprietà ci dice che per nessun sottoinsieme proprio dell'insieme X (qui A,B) vale la proprietà di prima,cioè NON è vero che NON troverai mai una coppia di tuple distinta per cui A sia uguale in entrambe o lo sia B,perchè se succedesse A,B non sarebbe più una chiave MINIMALE ma una superchiave. Una superchiave è un insieme di attributi che contiene la chiave.
Spero sia più chiaro,sennò fatti sentire
__________________
GET DROPBOX
# il grado di lentezza è direttamente proporzionale all'intensità della memoria;il grado di velocità è direttamente proporzionale all'intensità dell'oblio (Kundera) #
BLOG: Byte Strike
ChRiS
allora provo a fare un esempio:
Nome,Cognome,DataNascita,Altezza;
Allora suppongo che Nome,Cognome sia chiave...quindi per la 2° proprietà direi che DEVO avere almeno 2 nomi uguali o almeno 2 cognomi uguali...
altrimenti l'accoppiata Nome,Cognome sarebbe una SuperChiave.
Ho capito??
grazie
Originally posted by tolarian
allora provo a fare un esempio:
Nome,Cognome,DataNascita,Altezza;
Allora suppongo che Nome,Cognome sia chiave...quindi per la 2° proprietà direi che DEVO avere almeno 2 nomi uguali o almeno 2 cognomi uguali...
altrimenti l'accoppiata Nome,Cognome sarebbe una SuperChiave.
Ho capito??
grazie
code:
CREATE TABLE ( Nome varchar(10), Cognome varchar(10), DataN date, Altezza varchar(3), primary key(Nome,Cognome));
__________________
GET DROPBOX
# il grado di lentezza è direttamente proporzionale all'intensità della memoria;il grado di velocità è direttamente proporzionale all'intensità dell'oblio (Kundera) #
BLOG: Byte Strike
ChRiS
All times are GMT. The time now is 19:22. | Show all 4 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.