有人可以帮我发现我的sql语法中的错误吗?

时间:2013-05-31 19:59:23

标签: mysql database

我遇到语法错误,我无法辨别。帮助赞赏!

  

架构创建失败:您的SQL语法出错;校验   与您的MySQL服务器版本对应的手册   在'`i_id` int,PRIMARY KEY(d_id),FOREIGN KEY附近使用的语法   (i_id)REFERENCES指标(第6行的i_id':

CREATE TABLE Indicators
(
    `i_id` int AUTO_INCREMENT,
    `i_name` varchar(255),
    PRIMARY KEY (i_id)
);

CREATE TABLE Data
(
    `d_id` int AUTO_INCREMENT,
    `Year` year,
    `Datapoint` float(24,2)
    `i_id` int,
    PRIMARY KEY (d_id),
    FOREIGN KEY (i_id) REFERENCES Indicators (i_id)
);

2 个答案:

答案 0 :(得分:6)

您错过了Datapoint

末尾的逗号

此外,如果MySQL实例的默认引擎不是InnoDB,您将无法创建外键。

答案 1 :(得分:2)

CREATE TABLE Data
(
    `d_id` int AUTO_INCREMENT,
    `Year` year,
    `Datapoint` float(24,2),
                           ^------ here it is
    `i_id` int,
    PRIMARY KEY (d_id),
    FOREIGN KEY (i_id) REFERENCES Indicators (i_id)
);

您在float(24,2)

之后错过了一个逗号
相关问题