Ошибка 1064 при импорте SQL, сгенерированного из прямого проектирования MySQL Workbench

Я пытаюсь импортировать схему в MySQL (MariaDB 10.1.36) и получаю указанную выше ошибку. Я также пробовал прямое проектирование в MySQL Workbench, но результаты такие же.

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ') ENGINE = 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;

Я тщетно пытался изменить обратные кавычки на одинарные кавычки, позже я удалил их с тем же результатом. Ожидается, что таблица будет создана, поэтому остальные структурированы так.

Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
0
0
418
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

убери VISIBLE слово

ДЕМО

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) 
)

Нужен MySQL 5.7, чтобы заставить его работать, MariaDB для этого не подходит.

Bw. Kizito 09.04.2019 11:41

Убедитесь, что ваша версия mariadb поддерживает невидимые/видимые индексы здесь https://mariadb.com/kb/en/library/invisible-columns/, и если нет, отключите параметр в рабочей среде mysql здесь https://dev.mysql.com/doc/workbench/en/wb-table-editor-indexes-tab.html.

Другие вопросы по теме