[ Tyler Durden @ 08.07.2014. 17:57 ] @
Imam jednu join tabelu koja ima samo dvije kolone, odnosno dva foreing key-ja. Mislio sam da stavim kompozitni ključ tako da obe kolone čine PRIMARY KEY.
E sad, kako da napravim foreign key relacije? Jer sad kako sam uradio dobijam grešku ERROR 1022 (23000): Can't write; duplicate key in table 'article_category'

Code:
CREATE TABLE IF NOT EXISTS `nii`.`article_category` (
  `article_id` INT UNSIGNED NOT NULL,
  `category_id` MEDIUMINT UNSIGNED NOT NULL,
  PRIMARY KEY (`category_id`, `article_id`),
  CONSTRAINT `fk_article_id`
    FOREIGN KEY (`article_id`)
    REFERENCES `nii`.`article` (`id`)
    ON DELETE RESTRICT
    ON UPDATE CASCADE,
  CONSTRAINT `fk_category_id`
    FOREIGN KEY (`category_id`)
    REFERENCES `nii`.`category` (`id`)
    ON DELETE RESTRICT
    ON UPDATE CASCADE)
ENGINE = InnoDB
[ Tyler Durden @ 08.07.2014. 21:19 ] @
Evo da odgovorim sam sebi. FK mora da ima jedinstveno ime za čitavu bazu.
[ bogdan.kecman @ 10.07.2014. 16:27 ] @
zar nije tako u svakom rdbms-u koji podrzava fk ?
[ Tyler Durden @ 10.07.2014. 18:20 ] @
Nemam pojma. Nisam ni za MySQL znao :D
[ bogdan.kecman @ 10.07.2014. 18:52 ] @
ne mogu da se zakunem 100% ali mislim da je svuda tako (ja se svuda ponasam kao da jeste), posto je fk ime "schema space" mora da bude unique ... meni je bar tako logicno ... pogledaj kakva im imena daje workbench :)
[ Tyler Durden @ 10.07.2014. 20:31 ] @
Ma u WB sam i radio, nego sam ih ja preimenovao sve kako sam ih kreirao redom u ono sto je meni bilo lakse pamtljivo. I onda sam imao deset fk_user_id :-D