我正在尝试设计一个数据库,如下所示:
CREATE TABLE `Item` (
`SKU` int(11) NOT NULL,
`ItemName` varchar(45) DEFAULT NULL
PRIMARY KEY (`SKU`)
)
CREATE TABLE `ItemVariant` (
`SKU` int(11) NOT NULL,
`ItemAttributeID` int(11) NOT NULL AUTO_INCREMENT,
`Color` varchar(45) DEFAULT NULL,
PRIMARY KEY (`SKU`,`ItemAttributeID`),
CONSTRAINT `ItemAttributeMaster_SKU` FOREIGN KEY (`SKU`) REFERENCES `ItemMaster` (`SKU`) ON DELETE CASCADE ON UPDATE CASCADE
)我希望自动递增的工作方式是这样的-对于每个SKU,ItemAttributeID将从1开始自动递增。
SKU|ItemAttributeID|Color
1 |1 |Red
1 |2 |Blue
1 |3 |Green
2 |1 |Purple
2 |2 |Orange
2 |3 |Red
2 |4 |Blue
3 |1 |Green但是使用自动递增并不能实现这一点。怎样才能达到这样的效果呢?
发布于 2017-11-22 01:50:55
您必须手动执行此操作,或者可以在MyISAM引擎中使用trigger...or,如果您将其用于表,则它的工作方式与您所希望的一样,但该引擎不强制使用外键。
https://stackoverflow.com/questions/47419463
复制相似问题