这是错误:
在服务器
中执行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
答案 0 :(得分:0)
您已经将定义列约束的语法与定义表约束混淆了。在表名后面的parens中,您应该有一个以逗号分隔的列定义列表,其列表形式为“column_name column_type column_constraints”,其中唯一必需的元素是列名。但是,在第一个逗号之后,您有PRIMARY KEY (idEmployee)
,这不是列定义。 (相反,它的语法适用于ALTER TABLE
命令。)检查CREATE TABLE
命令here的语法。