我是 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.Salmon 的說法,這是因為等級的名稱。查看 dev.mysql.com/doc/refman/8.0/en/keywords.html 後,將排名更改為
rank
並且成功了。