MySQL Workbench: сценарий прямого проектирования не работает с: Неизвестное сопоставление: 'Сопоставление по умолчанию' - PullRequest
0 голосов
/ 06 мая 2020

Описание проблемы

Через пару недель у меня возникла проблема с MySQL Workbench.

Я обновил свой Ubuntu и, вероятно, также приложение MySQL Workbench. У меня сейчас версия 8.0. (Версия локального MySQL сервера: 8.0.20 для Ubuntu, но я не думаю, что это актуально.)

Проблема возникает, когда я создаю сценарий прямого проектирования. Оператор CREATE TABLE для вновь добавленной таблицы (к существующей модели) теперь добавляет квалификатор COLLATE в столбец VARCHAR, например:

VARCHAR(45) COLLATE 'Default Collation' NOT NULL

Это приводит к сбою сценария прямого проектирования, например:

Error Code: 1273. Unknown collation: 'Default Collation'

Странная вещь

Параметры кодировки и сопоставления для этой таблицы точно такие же, как для всех других таблиц в модели, как на рисунке:

Screenshot of table settings in MySQL workbench

Все остальные таблицы, некоторые из которых имеют точно такое же определение столбца, создаются без квалификатора COLLATE ...?!

Вопрос

Как получить сценарий форвардного инжиниринга (лучше всего) не добавлять квалификатор COLLATE для этой таблицы ИЛИ (второй вариант) как получить форвардный инжиниринг сценарий для определения Default Collation?

Возможно, уместно

Сценарий прямого проектирования генерирует оператор схемы следующим образом:

- MySQL Script generated by MySQL Workbench
-- wo 06 mei 2020 12:48:14 CEST
-- Model: New Model    Version: 1.0
-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';

-- -----------------------------------------------------
-- Schema gsmg
-- -----------------------------------------------------
-- GMSG database.
DROP SCHEMA IF EXISTS `gsmg` ;

-- -----------------------------------------------------
-- Schema gsmg
--
-- GMSG database.
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `gsmg` ;
USE `gsmg` ;

...