I have a problem with adding part of db to ready db. It looks like:
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,ALLOW_INVALID_DATES';
-- -----------------------------------------------------
-- Table `kreker92_diplom`.`diplom_sites_users`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `kreker92_diplom`.`diplom_sites_users` (
`id` INT NOT NULL AUTO_INCREMENT,
`idusers` INT NOT NULL,
`idsite` INT NOT NULL,
`datecreate` DATETIME NOT NULL,
`dateedit` DATETIME NULL,
PRIMARY KEY (`id`, `idsite`, `idusers`),
INDEX `fk_diplom_sites_users_diplom_users1_idx` (`idusers` ASC),
CONSTRAINT `fk_diplom_sites_users_diplom_users1`
FOREIGN KEY (`idusers`)
REFERENCES `kreker92_diplom`.`diplom_users` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `kreker92_diplom`.`diplom_sites_data`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `kreker92_diplom`.`diplom_sites_data` (
`id` INT NOT NULL AUTO_INCREMENT,
`idsite` INT NOT NULL,
`siteurl` VARCHAR(200) NOT NULL,
`mobsiteurl` VARCHAR(200) NOT NULL,
`uridir` VARCHAR(100) NOT NULL,
`sitetype` VARCHAR(45) NOT NULL,
`panelstyle` VARCHAR(45) NOT NULL,
`publish` TINYINT(1) NOT NULL,
`multilang` TINYINT(1) NOT NULL,
`callbtn` TINYINT(1) NOT NULL,
`sinchronization` TIME NULL,
PRIMARY KEY (`id`, `idsite`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `kreker92_diplom`.`diplom_sites`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `kreker92_diplom`.`diplom_sites` (
`id` INT NOT NULL AUTO_INCREMENT,
`idsite` INT NOT NULL,
`datecreate` DATETIME NOT NULL,
`dateedit` DATETIME NULL,
`sites_data_idsite` INT NOT NULL,
KEY ix_diplom_sites_idsite (idsite),
PRIMARY KEY (`id`, `idsite`),
CONSTRAINT `fk_sites_users`
FOREIGN KEY (`idsite`)
REFERENCES `kreker92_diplom`.`diplom_sites_users` (`idsite`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_sites_sites_data1`
FOREIGN KEY (`idsite`)
REFERENCES `kreker92_diplom`.`diplom_sites_data` (`idsite`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
But phpMyAdmin sad that:
1005 - Can't create table 'kreker92_diplom.diplom_sites' (errno: 150)
abd it starts from:
-- -----------------------------------------------------
-- Table `kreker92_diplom`.`diplom_sites`
-- -----------------------------------------------------
But i've made a KEY:
KEY ix_diplom_sites_idsite (idsite),
So what is wrong I make?