mysql - 复制带有约束mysql存储过程的表结构
问题描述
如何将具有所有约束的表结构复制到另一个表中。
我必须使用 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
任何人请给我这个问题的解决方案。
谢谢,
解决方案
推荐阅读
- microsoft-graph-api - 为 Outlook 日历创建事件订阅时出现问题
- firebase - 为什么我的用于 Firebase 的 Cron 计划云功能在太平洋时间而不是 UTC 时间运行?
- css - 如何使用 html 加 css 设置 textarea 行和调整大小?
- php - Laravel-5.8:试图获取非对象的属性“display_name”(查看:D:\xampp\htdocs\MyProject\resources\views\pages\index.blade.php)
- python - 如何在 python 中使用请求对象打开 Web 浏览器
- ios - swift - 在editingDidEnd 后texfield 调用editingDidBegin
- wordpress - WordPress ACF 用户字段未通过
- delphi - 如何在 TRichEdit 的顶部插入新的、未格式化的行
- c# - 布尔值和数组问题
- javascript - 如何改变`
`在`