首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当我找不到问题时,如何解决SQL错误1604语法错误?

当我找不到问题时,如何解决SQL错误1604语法错误?
EN

Stack Overflow用户
提问于 2020-09-15 13:53:39
回答 1查看 66关注 0票数 0

我对所有这些都很陌生,而且我很难发现语法中的错误是用于创建sql表的地方,我们非常感谢任何支持:

我收到的错误是:

代码语言:javascript
运行
复制
ERROR 1064 (42000): 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 ims.orders ()
ON DELETE CASCADE
ON UPDATE CASCADE,
CO' at line 8

它来自于运行以下代码片段:

代码语言:javascript
运行
复制
   CREATE TABLE IF NOT EXISTS `ims`.`orderline` (
  `olid` INT NOT NULL AUTO_INCREMENT,
  `oid` INT NOT NULL,
  `iid` INT NOT NULL,
  `quantity` INT NOT NULL,
  PRIMARY KEY (`olid`),
  CONSTRAINT `oid`
    FOREIGN KEY ()
    REFERENCES ims.orders ()
    ON DELETE CASCADE
    ON UPDATE CASCADE,
  CONSTRAINT `iid`
    FOREIGN KEY ()
    REFERENCES ims.items ()
    ON DELETE CASCADE
    ON UPDATE CASCADE
);

从使用此架构创建的数据库中:

代码语言:javascript
运行
复制
drop schema ims;
CREATE SCHEMA IF NOT EXISTS `ims`;
USE `ims` ;
CREATE TABLE IF NOT EXISTS `ims`.`customers` (
    `cid` INT(11) NOT NULL AUTO_INCREMENT,
    `first_name` VARCHAR(40) NULL DEFAULT NULL,
    `surname` VARCHAR(40) NULL DEFAULT NULL,
    PRIMARY KEY (`cid`)
);
CREATE TABLE IF NOT EXISTS `ims`.`items` (
    `iid` INT(11) NOT NULL AUTO_INCREMENT,
    `name` VARCHAR(40) NULL DEFAULT NULL,
    `price` DECIMAL(10,2) NOT NULL,
    PRIMARY KEY (`iid`)
);
CREATE TABLE IF NOT EXISTS `ims`.`orders` (
    `oid` INT(11) NOT NULL AUTO_INCREMENT,
    `cid`INT(11) NOT NULL,
    FOREIGN KEY (cid) REFERENCES ims.customers (cid)
    ON DELETE CASCADE
    ON UPDATE CASCADE,
    PRIMARY KEY (`oid`)
);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-15 13:58:51

代码语言:javascript
运行
复制
CREATE TABLE IF NOT EXISTS `ims`.`orderline` (
`olid` INT NOT NULL AUTO_INCREMENT,
`oid` INT NOT NULL,
`iid` INT NOT NULL,
`quantity` INT NOT NULL,
PRIMARY KEY (`olid`),
CONSTRAINT `oid_fk`
  FOREIGN KEY (`oid`)
  REFERENCES ims.orders (oid)
  ON DELETE CASCADE
  ON UPDATE CASCADE,
CONSTRAINT `iid_fk`
  FOREIGN KEY (`iid`)
  REFERENCES ims.items (iid)
  ON DELETE CASCADE
  ON UPDATE CASCADE
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63903426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档