Для этой проблемы это происходит только на стороне графического интерфейса, скрипт по-прежнему работает нормально
Искал ответы, и самое близкое, что я нашел,
Mysql Workbench не может выбрать внешний ключ
, но на самом деле это не отвечает на вопрос, учитывая, что в инструкции создания оба ключа одинаковы типы данных
есть отчеты об ошибках по этой проблеме в 2010 году на стороне mysql без каких-либо последующих действий, и не похоже, что многие люди жаловались на это, поэтому мне было интересно, сделал ли я что-то не так.
Это работало хорошо, прежде чем я изменил коалицию на utf8mb4_unicode_ci
Я использовал скрипт, чтобы установить все varchar и текст, чтобы они стали ut8mb4 ранее
Я в порядке, просто используя скрипты, но изменение сортировки на utf8mb4 затронутого импорта данных, поэтому я пытаюсь выяснить, не моя ли это вина.
mysql версии 5.7.22 (на AWS RDS)
рабочая среда версии 8.0.22
CREATE TABLE `campaign` (
`campaignID` int(11) NOT NULL,
`productID` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
`createdDate` datetime DEFAULT CURRENT_TIMESTAMP,
`startDate` datetime DEFAULT CURRENT_TIMESTAMP,
`endDate` datetime DEFAULT NULL,
PRIMARY KEY (`campaignID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
CREATE TABLE `products` (
`productID` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
`productName` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'namelessProduct',
`description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`productID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;