【问题标题】:MySQL Workbench 1064 error in syntaxMySQL Workbench 1064 语法错误
【发布时间】:2017-05-06 09:27:17
【问题描述】:

MySQL Workbench 创建了这段代码,而不是我。我只是使用了 GUI。

Operation failed: There was an error while applying the SQL script to the database.
Executing:
ALTER TABLE `isometr1_keyboard`.`records` 
ADD CONSTRAINT `fk_records_layout_id`
  FOREIGN KEY ()
  REFERENCES `isometr1_keyboard`.`layouts` ()
  ON DELETE NO ACTION
  ON UPDATE NO ACTION;

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 `isometr1_keyboard`.`layouts` ()
  ON DELETE NO ACTION
  ON UPDAT' at line 3
SQL Statement:
ALTER TABLE `isometr1_keyboard`.`records` 
ADD CONSTRAINT `fk_records_layout_id`
  FOREIGN KEY ()
  REFERENCES `isometr1_keyboard`.`layouts` ()
  ON DELETE NO ACTION
  ON UPDATE NO ACTION

我不明白错误在哪里。也不明白为什么 GUI 创建的代码有问题。

我做错了吗?

【问题讨论】:

  • 嗯,是的。空括号需要一个或多个逗号。
  • 没关系。列的数据类型不匹配。我希望错误消息这么说。
  • 您没有为外键选择任何源或目标列。

标签: mysql mysql-workbench


【解决方案1】:

列的数据类型不匹配。这会导致 MySQL Workbench 创建格式不正确的代码。

【讨论】:

    猜你喜欢
    • 2018-04-14
    • 2016-03-10
    • 2015-04-25
    • 1970-01-01
    • 2011-04-17
    • 1970-01-01
    • 2018-03-05
    • 2014-01-22
    • 1970-01-01
    相关资源
    最近更新 更多