导入从MySQL Workbench正向工程生成的SQL时出现错误1064

时间:2019-04-09 05:58:45

标签: mysql sql

我正在尝试将模式导入MySQL(MariaDB 10.1.36),并且遇到了以上错误。我还尝试了在MySQL Workbench中进行直接正向工程,但是结果是相同的。

  

错误1064(42000):您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册以获取在')附近使用的正确语法   引擎= InnoDB

失败的示例代码为:

CREATE TABLE IF NOT EXISTS `example`.`adhere` (
  `adhere_id` BIGINT(20) NOT NULL AUTO_INCREMENT,
  `description` VARCHAR(100) NOT NULL,
  `id_uuid` VARCHAR(36) NULL,
  PRIMARY KEY (`adhere_id`),
  INDEX `ix_tmp_autoinc` (`adhere_id` ASC) VISIBLE)
ENGINE = InnoDB
AUTO_INCREMENT = 19
DEFAULT CHARACTER SET = latin1;

我试图将反引号徒劳地改为单引号,后来我将其删除以得到相同的结果。期望创建表,其余的结构也是如此。

2 个答案:

答案 0 :(得分:1)

删除VISIBLE

DEMO

CREATE TABLE IF NOT EXISTS `example`.`adhere` 
(
  `adhere_id` BIGINT(20) NOT NULL AUTO_INCREMENT,
  `description` VARCHAR(100) NOT NULL,
  `id_uuid` VARCHAR(36) NULL,
  PRIMARY KEY (`adhere_id`),
  INDEX `ix_tmp_autoinc` (`adhere_id` ASC) 
)

答案 1 :(得分:1)

https://mariadb.com/kb/en/library/invisible-columns/处检查您的mariadb版本是否支持不可见/可见索引,如果没有关闭,请在https://dev.mysql.com/doc/workbench/en/wb-table-editor-indexes-tab.html处关闭mysql workbench中的选项