Pogledajte određenu poruku
Staro 07. 04. 2014.   #1
slavkan
profesionalac
Professional
 
Datum učlanjenja: 30.08.2010
Poruke: 200
Hvala: 10
454 "Hvala" u 13 poruka
slavkan is on a distinguished roadslavkan is on a distinguished roadslavkan is on a distinguished roadslavkan is on a distinguished roadslavkan is on a distinguished road
Default MySQL error #1005

Pozdrav svima.
Pre neki dan sam pisao o azbucnom sortiranju koje sam uspesno resio tako sto sam u MySQL dodao novi collation utf8_serbian_ci i to je sve radilo lepo dok sam koristio XAMPP 1.8.3.
Iz jednog, sad nebitnog razloga, moram sam da predjem na XAMP 1.8.1.
Prethodno u ovoj verziji 1.8.1. napravim novi collation, exportujem bazu iz 1.8.3 verzije i kad zelim da je ubacim u ovu 1.8.1 MySQL mi javi gresku

Kd:
#1005 Can't create table 'radnik' (errno:1005)
Ja malo izguglam i saznam da je ta greska vezana za kljuceve i da nisu dobro postavljeni.
Evo stavljam tabelu radnik pa da pokusamo razresiti sta nije uredu:

Kd:
CREATE TABLE IF NOT EXISTS `radnik` (
  `id_radnika` int(4) NOT NULL AUTO_INCREMENT,
  `ime_radnika` varchar(45) COLLATE utf8_serbian_ci NOT NULL,
  `prezime_radnika` varchar(45) COLLATE utf8_serbian_ci NOT NULL,
  `id_lokacije` int(3) NOT NULL,
  `id_objekta` int(3) NOT NULL,
  `email` varchar(45) CHARACTER SET utf8 DEFAULT NULL,
  PRIMARY KEY ('id_radnika'),
  FOREIGN KEY ('id_lokacije') REFERENCES lokacija('id_lokacije')
  ON DELETE CASCADE ON UPDATE CASCADE,
  FOREIGN KEY ('id_objekta') REFERENCES objekat('id_objekta') 
  ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_serbian_ci AUTO_INCREMENT=748 ;
id_lokacije i id_objekta su strani kljucevi koji su primarni kljucevi u tabelama lokacija i radnik.

Evo i tabela lokacija i objekat gdje su id_lokacije i id_objekta primarni kljucevi

Kd:
CREATE TABLE IF NOT EXISTS `objekat` (
  `id_objekta` int(3) NOT NULL AUTO_INCREMENT,
  `naziv_objekta` varchar(70) NOT NULL,
  PRIMARY KEY (`id_objekta`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=35 ;
Kd:
CREATE TABLE IF NOT EXISTS `lokacija` (
  `id_lokacije` int(3) NOT NULL AUTO_INCREMENT,
  `naziv_lokacije` varchar(70) NOT NULL,
  PRIMARY KEY (`id_lokacije`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=24 ;
Unaprijed hvala!
slavkan je offline   Odgovorite uz citat