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

Referencijalni integritet izmedju tabela

[es] :: MySQL :: Referencijalni integritet izmedju tabela

[ Pregleda: 2704 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

batasson
Nikola Pasic
Beograd

Član broj: 96246
Poruke: 148
95.180.70.*



Profil

icon Referencijalni integritet izmedju tabela22.02.2011. u 15:24 - pre 159 meseci
Pozdrav,

Napravio sam dve tabele i povezao ih, ali me zanima da li je nametnut referencijalni integritet izmedju njih.

Code:

CREATE TABLE odeljenje (
odeljenjeID int NOT NULL auto_increment PRIMARY KEY,
naziv varchar(20),
adresa varchar(50),
grad varchar(20)
) type = InnoDB;

CREATE TABLE radnik (
radnikID int NOT NULL auto_increment PRIMARY KEY,
ime varchar(20),
prezime varchar(20),
adresa varchar(50),
dat_rodjenja varchar(15),
str_sprema varchar(15),
odeljenjeID int NOT NULL REFERENCES odeljenje(odeljenjeID)
) type = InnoDB;


Koliko sam skapirao "REFERENCES" pravi vezu sa drugom tabelom, ali da li i namece ref. integritet?
U slucaju da nije nametnut, a pretpostavljam da nije, kako bi to trebao da uradim?

Hvala!
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Referencijalni integritet izmedju tabela22.02.2011. u 15:39 - pre 159 meseci
http://dev.mysql.com/doc/refma...b-foreign-key-constraints.html

Code:

CREATE  TABLE IF NOT EXISTS `radnik` (
  `radnik_id` INT NOT NULL AUTO_INCREMENT ,
  `ime` VARCHAR(45) NULL ,
  `prezime` VARCHAR(45) NULL ,
  `adresa` VARCHAR(45) NULL ,
  `datum_rodjenja` DATE NULL ,
  `str_sprema` VARCHAR(45) NULL ,
  `odeljenje_odeljenje_id` INT NOT NULL ,
  PRIMARY KEY (`radnik_id`) ,
  INDEX `fk_radnik_odeljenje` (`odeljenje_odeljenje_id` ASC) ,
  CONSTRAINT `fk_radnik_odeljenje`
    FOREIGN KEY (`odeljenje_odeljenje_id` )
    REFERENCES `odeljenje` (`odeljenje_id` )
    ON DELETE CASCADE
    ON UPDATE RESTRICT)
ENGINE = InnoDB


 
Odgovor na temu

batasson
Nikola Pasic
Beograd

Član broj: 96246
Poruke: 148
95.180.70.*



Profil

icon Re: Referencijalni integritet izmedju tabela23.02.2011. u 15:24 - pre 159 meseci
Hvala na odgovoru, a cemu sluzi ovo?

ON DELETE CASCADE
ON UPDATE RESTRICT
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Referencijalni integritet izmedju tabela23.02.2011. u 15:33 - pre 159 meseci
http://dev.mysql.com/doc/refma...b-foreign-key-constraints.html
Citat:

CASCADE: Delete or update the row from the parent table, and automatically delete or update the matching rows in the child table. Both ON DELETE CASCADE and ON UPDATE CASCADE are supported. Between two tables, do not define several ON UPDATE CASCADE clauses that act on the same column in the parent table or in the child table.


Citat:

RESTRICT: Rejects the delete or update operation for the parent table. Specifying RESTRICT (or NO ACTION) is the same as omitting the ON DELETE or ON UPDATE clause.


 
Odgovor na temu

[es] :: MySQL :: Referencijalni integritet izmedju tabela

[ Pregleda: 2704 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

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