Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Što je tu Surrogat ključ ili ja nisam dobro čuo?

[es] :: Baze podataka :: Što je tu Surrogat ključ ili ja nisam dobro čuo?

[ Pregleda: 3455 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

zorrome

Član broj: 22587
Poruke: 198
*.cmu.carnet.hr.



Profil

icon Što je tu Surrogat ključ ili ja nisam dobro čuo?26.08.2005. u 17:39 - pre 226 meseci
Što je tu Surrogat ključ ili polje(nisam siguran što sam čuo) u bazama podataka - ili ja nisam dobro čuo? Nikad prije to nisam čuo.
 
Odgovor na temu

antix

Član broj: 8388
Poruke: 265
*.pat-pool.nsad.sbb.co.yu.

Jabber: antix@elitesecurity.org


Profil

icon Re: Što je tu Surrogat ključ ili ja nisam dobro čuo?26.08.2005. u 17:59 - pre 226 meseci
surrogate key je drugi naziv za vještački ključ koji dodijeliš određenom podatku... znači umjesto npr. JMBG ti koristiš neki ID da bi identifikovao neku osobu.
 
Odgovor na temu

Riste Pejov
Team Leader/Senior Software Developer @
Ein-Sof ltd Skopje
Skopje, Macedonia

Član broj: 128
Poruke: 571
62.162.223.*

Jabber: richie@bagra.net.mk
ICQ: 154236769
Sajt: riste.softver.org.mk


Profil

icon Re: Što je tu Surrogat ključ ili ja nisam dobro čuo?27.08.2005. u 11:36 - pre 226 meseci
Surogatni kljucevi ti trebaju kada:
1. Tabela nema dobrog kandidata za PK.
2. PK je kompozitni sa veliki broj kolona i je kompliciran za upotrebu.
3. Kandidat za PK se koristi u FK relacije i svaka promena bi zahtevala cascade update

Primer koji apsolutno zadovoljava potrebe za surogatnim kljucem,

Tabele:
Code:

MASTER
------------
naziv  char(50)
tip      int
datum datetime
--------------
PRIMARY KEY (naziv,tip,datum)

DETAIL
------------
naziv    char(50)
tip        int
datum   datetime
ex_data char(100)
--------------
PRIMARY KEY (naziv,tip,datum,ex_data)
FOREIGN KEY fk1 ON naziv,tip,datum REFERENCES MASTER(naziv,tip,datum)


Ako se koriste surogatni klucevi onda bi tabele izgledale ovako:
Tabele:
Code:

MASTER
------------
MASTER_ID      int (sequence, autoinc, whatever ...)
naziv  char(50)
tip      int
datum datetime
--------------
PRIMARY KEY (MASTER_ID)

DETAIL
------------
DETAIL_ID      int (sequence, autoinc, whatever ...)
MASTER_ID      int
naziv    char(50)
tip        int
datum   datetime
ex_data char(100)
--------------
PRIMARY KEY (DETAIL_ID)
FOREIGN KEY fk1 ON MASTER_ID REFERENCES MASTER(MASTER_ID)


I polja koja su bili PK u prvom slucaju sada mogu imati samo UNIQUE constraint.
People who think they know everything tend to irritate those of us who do.
 
Odgovor na temu

[es] :: Baze podataka :: Što je tu Surrogat ključ ili ja nisam dobro čuo?

[ Pregleda: 3455 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.