Từ trang hướng dẫn sử dụng mysql, tìm thấy tại đây
Vấn đề của bạn là đối chiếu. Tôi không gặp vấn đề gì khi tạo bất kỳ thứ gì sau đây. Lưu ý rằng tôi đã phải loại bỏ tên db của bạn khỏi một phần của nó.
Ồ, và vì bạn không cung cấp bảng thứ ba, nên tôi phải loại bỏ ràng buộc FK đó. Nhưng đó không phải là vấn đề.
Lưu ý, tính vô hiệu không phải là vấn đề.
Bạn quyết định làm gì về các lựa chọn đối chiếu của mình là tùy thuộc vào bạn. Nhưng đó là nó.
CREATE TABLE `configuration_master` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`insertTimestamp` datetime DEFAULT NULL,
`propName` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`propValue` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`propType` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`IsCloudSupport` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`DisplayName` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`updateTimestamp` datetime DEFAULT NULL,
`userId` bigint(20) DEFAULT NULL,
`SYNCCOL1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL3` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL4` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL5` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL6` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL7` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL8` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL9` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SYNCCOL10` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`prptyp` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `propName` (`propName`),
KEY `FKB54491EB8E326E43` (`userId`),
KEY `proptype_frn_idx` (`propType`),
KEY `ASD_idx` (`prptyp`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE `config_group` (
`groupName` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`prop1` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,
`prop2` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,
`prop3` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,
`prop4` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,
`ADS` int(11) DEFAULT NULL,
`config_groupcol` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`groupName`),
UNIQUE KEY `config_groupcol_UNIQUE` (`config_groupcol`),
UNIQUE KEY `ADS_UNIQUE` (`ADS`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
ALTER TABLE `configuration_master`
ADD CONSTRAINT `FK_configGrop`
FOREIGN KEY (`propType`)
REFERENCES `config_group` (`groupName`);
Thêm chi tiết về Bản gốc của bạn
Điều này giải quyết nhận xét từ Barmar. Bạn tạo bảng cho config_group
gây ra sự khác biệt cho các đối chiếu phù hợp để FK thành công với ALTER TABLE
. Trang thủ công cho HIỂN THỊ ĐẦY ĐỦ CÁC BỘ SƯU TẬP
Từ Trang thủ công tại đây :