我在解密MySQL错误日志时遇到了问题,通过了“正向工程”选项

时间:2011-05-03 06:04:25

标签: mysql database mysqldump

这是错误:

在服务器

中执行SQL脚本
ERROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')

    REFERENCES `mydb`.`Skill` ()
    ON DELETE NO ACTION
    ON UPDATE NO ACTI' at line 5

CREATE  TABLE IF NOT EXISTS `mydb`.`employeeSkill` (
  `idEmployee` INT NOT NULL ,
  PRIMARY KEY (`idEmployee`) ,
  CONSTRAINT `idSkill`
    FOREIGN KEY ()
    REFERENCES `mydb`.`Skill` ()
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB

SQL script execution finished: statements: 18 succeeded, 1 failed

1 个答案:

答案 0 :(得分:0)

您已经将定义列约束的语法与定义表约束混淆了。在表名后面的parens中,您应该有一个以逗号分隔的列定义列表,其列表形式为“column_name column_type column_constraints”,其中唯一必需的元素是列名。但是,在第一个逗号之后,您有PRIMARY KEY (idEmployee),这不是列定义。 (相反,它的语法适用于ALTER TABLE命令。)检查CREATE TABLE命令here的语法。