搜索

首页  >  问答  >  正文

MYSQL创建新表时遇到语法错误1064 (42000)

我是 MYSQL 新手,正在处理多对多表,当我尝试创建表时出现以下错误...

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 'rank INTEGER,
  year INTEGER,
  description TEXT,
  PRIMARY KEY(position_id),
  ' at line 4

创建调用是

CREATE TABLE Position (
  position_id INTEGER NOT NULL AUTO_INCREMENT,
  profile_id INTEGER,
  rank INTEGER,
  year INTEGER,
  description TEXT,
  PRIMARY KEY(position_id),
  CONSTRAINT position_ibfk_1
    FOREIGN KEY (profile_id)
    REFERENCES Profile (profile_id)
    ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

一切看起来都很干净,所以我不确定为什么会收到此错误

P粉982054449P粉982054449253 天前490

全部回复(1)我来回复

  • P粉937769356

    P粉9377693562024-03-22 11:07:47

    根据 P.Salmon 的说法,这是因为等级的名称。查看 dev.mysql.com/doc/refman/8.0/en/keywords.html 后,将排名更改为 rank 并且成功了。

    回复
    0
  • 取消回复