MySQL模型和数据库同步ERROR

时间:2013-04-06 22:53:39

标签: mysql

我在ER模型中创建了我的表,当我尝试将模型与服务器同步时,我看到了一个我无法弄清楚的错误日志。在此屏幕显示之前,只有15个表中的2个来源被发现其余的说“红色箭头 - > N / A”

p.s我只是通过ER模型完成此操作,我没有手动放入任何SQL。

这是我正在呈现的日志。

  

在服务器

中执行SQL脚本      

错误:错误1064:您的SQL语法出错;检查与您的MySQL服务器版本对应的手册,以便在')REFERENCES StudentRetentionSystemdb附近使用正确的语法。module()在第8行打开“无操作”

CREATE  TABLE IF NOT EXISTS `StudentRetentionSystemdb`.`tutor` (   
  `PersonID` INT(11) NULL DEFAULT NULL ,    
  `moduleLeader` INT(11) NULL DEFAULT NULL ,    
  `departmentCode` INT(11) NULL DEFAULT NULL ,    
  PRIMARY KEY (`PersonID`) ,    
  INDEX `departmentCode_idx` (`departmentCode` ASC) ,    
  CONSTRAINT `moduleLeader` FOREIGN KEY ()
    REFERENCES `StudentRetentionSystemdb`.`module` () 
      ON DELETE NO ACTION
      ON UPDATE NO ACTION,    
  CONSTRAINT `departmentCode` FOREIGN KEY (`departmentCode` )    
    REFERENCES `StudentRetentionSystemdb`.`department` (`departmentCode` )   
      ON DELETE NO ACTION  
      ON UPDATE NO ACTION)

ENGINE = InnoDB

DEFAULT CHARACTER SET = utf8

COLLATE = utf8_general_ci

SQL脚本执行完成:语句:3个成功,1个失败

1 个答案:

答案 0 :(得分:0)

CREATE TABLE声明的INDEX语句中有错误。您应该从索引部分删除ASC

INDEX `departmentCode_idx` (`departmentCode`)

将出现的第二个问题是您没有FOREIGN KEY约束的键定义

CONSTRAINT `moduleLeader` FOREIGN KEY (moduleLeader)           -- add column name
    REFERENCES `StudentRetentionSystemdb`.`module` (columnName)-- add column name
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,