[ scooter_freek @ 29.01.2012. 20:26 ] @
Pozdrav,

Izradujem jednu malu web aplikaciju za potrebe fakulteta (projekt) no zapeo sam na samom pocetku prilikom izrade baze.
Bazu izradujem u MySQL Workbanch-u koju kasnije prebacim na lokalnu bazu (xampp -> MySQL) no nazalost doslo mi je do problema prilikom izrade tablice sa vanjskim kljucevima..

Na slici se vidi diagram baze, tablice koje mi se nemogu napraviti su zapazanje i pripada_grupi.




Ovdje se nalazi SQL baze :
Code:

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL';

CREATE SCHEMA IF NOT EXISTS `vrtic` DEFAULT CHARACTER SET latin1 ;
USE `vrtic` ;

-- -----------------------------------------------------
-- Table `vrtic`.`dijete`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`dijete` (
  `oib_d` VARCHAR(11) NOT NULL ,
  `ime` VARCHAR(30) NOT NULL ,
  `prezim` VARCHAR(30) NOT NULL ,
  `dat_rod` DATE NOT NULL ,
  `adr_stan` VARCHAR(100) NOT NULL ,
  `roditelj` VARCHAR(50) NOT NULL ,
  `adr_rac` VARCHAR(100) NOT NULL ,
  PRIMARY KEY (`oib_d`) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `vrtic`.`program`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`program` (
  `sif_pro` VARCHAR(5) NOT NULL ,
  `opis` VARCHAR(45) NULL DEFAULT NULL ,
  `dob` VARCHAR(45) NULL DEFAULT NULL ,
  `cijena` VARCHAR(45) NULL DEFAULT NULL ,
  PRIMARY KEY (`sif_pro`) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `vrtic`.`grupa`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`grupa` (
  `sif_gru` VARCHAR(5) NOT NULL ,
  `opis` VARCHAR(200) NOT NULL ,
  `broj` MEDIUMTEXT NULL DEFAULT NULL ,
  `sif_pro` VARCHAR(5) NOT NULL ,
  PRIMARY KEY (`sif_gru`) ,
  INDEX `sif_pro` (`sif_pro` ASC) ,
  CONSTRAINT `sif_pro`
    FOREIGN KEY (`sif_pro` )
    REFERENCES `vrtic`.`program` (`sif_pro` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `vrtic`.`odgajatelj`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`odgajatelj` (
  `oib_o` VARCHAR(11) NOT NULL ,
  `ime` VARCHAR(30) NOT NULL ,
  `prezime` VARCHAR(30) NOT NULL ,
  `datum_rod` DATE NOT NULL ,
  `adresa` VARCHAR(100) NOT NULL ,
  `br_tel` VARCHAR(30) NULL DEFAULT NULL ,
  `napomena` VARCHAR(500) NULL DEFAULT NULL ,
  PRIMARY KEY (`oib_o`) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `vrtic`.`odgajatelj_vodi_grupu`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`odgajatelj_vodi_grupu` (
  `oib_o` VARCHAR(11) NOT NULL ,
  `sif_gru` VARCHAR(5) NOT NULL ,
  `dat_kraja` DATE NULL DEFAULT NULL ,
  INDEX `sif_gru` (`sif_gru` ASC) ,
  INDEX `oib_o` (`oib_o` ASC) ,
  CONSTRAINT `sif_gru`
    FOREIGN KEY (`sif_gru` )
    REFERENCES `vrtic`.`grupa` (`sif_gru` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `oib_o`
    FOREIGN KEY (`oib_o` )
    REFERENCES `vrtic`.`odgajatelj` (`oib_o` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `vrtic`.`upisano_dijete`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`upisano_dijete` (
  `br_pri` VARCHAR(5) NOT NULL ,
  `dat_prij` DATE NOT NULL ,
  `dat_upis` DATE NOT NULL ,
  `dokument` VARCHAR(2) NULL DEFAULT NULL ,
  `oib_d` VARCHAR(11) NULL DEFAULT NULL ,
  PRIMARY KEY (`br_pri`) ,
  INDEX `oib_d` (`oib_d` ASC) ,
  CONSTRAINT `oib_d`
    FOREIGN KEY (`oib_d` )
    REFERENCES `vrtic`.`dijete` (`oib_d` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `vrtic`.`pripada_grupi`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`pripada_grupi` (
  `br_pri` VARCHAR(5) NOT NULL ,
  `sif_gru` VARCHAR(5) NOT NULL ,
  PRIMARY KEY (`br_pri`, `sif_gru`) ,
  INDEX `br_pri` (`br_pri` ASC) ,
  INDEX `sif_gru` (`sif_gru` ASC) ,
  CONSTRAINT `br_pri`
    FOREIGN KEY (`br_pri` )
    REFERENCES `vrtic`.`upisano_dijete` (`br_pri` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `sif_gru`
    FOREIGN KEY (`sif_gru` )
    REFERENCES `vrtic`.`grupa` (`sif_gru` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `vrtic`.`račun`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`račun` (
  `br_rac` VARCHAR(5) NOT NULL ,
  `datum` DATE NOT NULL ,
  `opis` VARCHAR(50) NOT NULL ,
  `iznos` DECIMAL(10,0) NOT NULL ,
  `dat_dosp` DATE NOT NULL ,
  `placen` VARCHAR(2) NULL DEFAULT NULL ,
  `napomena` VARCHAR(200) NULL DEFAULT NULL ,
  `br_pri` VARCHAR(5) NOT NULL ,
  PRIMARY KEY (`br_rac`) ,
  INDEX `br_pri` (`br_pri` ASC) ,
  CONSTRAINT `br_pri`
    FOREIGN KEY (`br_pri` )
    REFERENCES `vrtic`.`upisano_dijete` (`br_pri` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `vrtic`.`zapazanje`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `vrtic`.`zapazanje` (
  `sif_zap` VARCHAR(5) NOT NULL ,
  `datum_zap` DATE NOT NULL ,
  `pristuno` VARCHAR(2) NULL DEFAULT NULL ,
  `opis` VARCHAR(500) NULL DEFAULT NULL ,
  `br_pri` VARCHAR(5) NOT NULL ,
  PRIMARY KEY (`sif_zap`) ,
  INDEX `br_pri` (`br_pri` ASC) ,
  CONSTRAINT `br_pri`
    FOREIGN KEY (`br_pri` )
    REFERENCES `vrtic`.`upisano_dijete` (`br_pri` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;



SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

[ bogdan.kecman @ 29.01.2012. 21:24 ] @
sta je pitanje? kakve veze ima row level locking sa db modelom?
[ scooter_freek @ 29.01.2012. 21:31 ] @
Problem rijesen:
Par vanjskih kljuceva imali su identicno ime te stoga nije prolazila izrada tablica.