创建含主键与外键的表时遭遇ER_PARSE_ERROR错误求助
排查ER_PARSE_ERROR错误的解决方案
你的SQL语句存在语法错误,这是触发ER_PARSE_ERROR的核心原因:
- 外键约束中的
ON DELETE SET CASCADE写法错误,MySQL中无SET CASCADE语法,正确写法为ON DELETE CASCADE。 - 存在笔误:
suply_type应为supply_type(该问题不影响语法解析,但属于命名规范问题)。
修正后的SQL语句:
CREATE TABLE branch_supplier( branch_id INT, supplier_name VARCHAR(40), supply_type INT, PRIMARY KEY(branch_id, supplier_name), FOREIGN KEY(branch_id) REFERENCES branch(branch_id) ON DELETE CASCADE );
额外排查步骤:
- 确认
branch表已提前创建,且branch_id字段类型与当前表的branch_id完全一致(均为INT)。 - 检查语句中是否混入全角符号(如中文分号、括号),确保所有符号为半角英文符号。
内容的提问来源于stack exchange,提问作者Adrià Martínez
相关产品推荐
相关产品推荐

