Скопировать структуру таблицы с ограничением mysql хранимая процедура - PullRequest
1 голос
/ 16 июня 2020

Как скопировать структуру таблицы со всеми ограничениями в другую таблицу.

Мне нужно скопировать все таблицы существующей базы данных в новую базу данных, используя CREATE TABLE new_tbl LIKE orig_tbl; заявление. Копирование структуры таблицы работает нормально, но не может скопировать ограничение этой таблицы.

Пожалуйста, проверьте старую таблицу и новую структуру таблицы

CREATE TABLE `attribute_groups_old` (
 `id` int unsigned NOT NULL AUTO_INCREMENT,
 `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
 `position` int NOT NULL,
 `is_user_defined` tinyint(1) NOT NULL DEFAULT '1',
 `attribute_family_id` int unsigned NOT NULL,
 PRIMARY KEY (`id`),
 UNIQUE KEY `attribute_groups_attribute_family_id_name_unique` (`attribute_family_id`,`name`),
 CONSTRAINT `attribute_groups_attribute_family_id_foreign` FOREIGN KEY (`attribute_family_id`) REFERENCES `attribute_families` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=86 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC

CREATE TABLE `attribute_groups_new` (
 `id` int unsigned NOT NULL AUTO_INCREMENT,
 `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
 `position` int NOT NULL,
 `is_user_defined` tinyint(1) NOT NULL DEFAULT '1',
 `attribute_family_id` int unsigned NOT NULL,
 PRIMARY KEY (`id`),
 UNIQUE KEY `attribute_groups_attribute_family_id_name_unique` (`attribute_family_id`,`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC

Кто угодно, пожалуйста, дайте мне решение этой проблемы.

Спасибо,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...