You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EER模型正向工程报错:MySQL/MariaDB SQL语法错误1064求助

解决MariaDB创建表时的SQL语法错误

问题原因

报错指向第10行的VISIBLE关键字——MariaDB(以及MySQL 8.0之前的版本)不支持VISIBLE/INVISIBLE索引修饰符,这是MySQL 8.0引入的语法,你的MariaDB版本不兼容该写法,导致解析失败。

修正后的SQL脚本

去掉索引定义后的VISIBLE关键字即可:

CREATE TABLE IF NOT EXISTS `a_work`.`artwork` (
  `artwork_id` INT NOT NULL,
  `title` VARCHAR(45) NOT NULL,
  `year` YEAR(4) NOT NULL,
  `period` VARCHAR(25) NOT NULL,
  `type` VARCHAR(20) NOT NULL,
  `file` MEDIUMBLOB NOT NULL,
  `artist_id` INT NOT NULL,
  PRIMARY KEY (`artwork_id`),
  INDEX `fk_artwork_artist_idx` (`artist_id` ASC),
  CONSTRAINT `fk_artwork_artist`
    FOREIGN KEY (`artist_id`)
    REFERENCES `a_work`.`artist` (`artist_id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB

额外说明

  • 若需要控制索引可见性,需确认MariaDB版本是否支持(MariaDB 10.6及以上才引入VISIBLE/INVISIBLE索引功能),版本过低则需升级或放弃该语法。
  • 正向工程工具(如MySQL Workbench)可能默认生成MySQL 8.0+的语法,可在工具设置中调整目标数据库版本为对应MariaDB版本,避免生成不兼容代码。

内容的提问来源于stack exchange,提问作者Febirison

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 07:24:51