2017-11-21 17 views
0

기본 키 자동 증가 : MySQL의 복합 나는 다음과 같은 데이터베이스 설계하려고

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 

그러나 자동 증가를 사용하면이 문제가 발생하지 않습니다. 어떻게이 결과를 얻을 수 있습니까?

답변

0

수동으로해야하거나 트리거를 사용할 수 있습니다 ... 또는 MyISAM 엔진에서 테이블에 사용할 경우 원하는대로 작동하지만 엔진이 외래 키를 적용하지 않습니다.