2014-01-09 44 views
0

我有這個表MySQL的組合鍵完整性

CREATE TABLE `inventario` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `cla` varchar(100) NOT NULL, 
    `des` varchar(500) NOT NULL, 
    `lin` varchar(3) NOT NULL, 
    `cal` varchar(20) NOT NULL, 
    `uen` varchar(20) NOT NULL, 
    `can` double NOT NULL, 
    `fei` varchar(10) NOT NULL, 
    `fec` varchar(10) NOT NULL, 
    `obs` varchar(500) NOT NULL, 
    `ppu` double NOT NULL, 
    `pl1` double NOT NULL, 
    `pl2` double NOT NULL, 
    `pl3` double NOT NULL, 
    `pl4` double NOT NULL, 
    `prm` double NOT NULL, 
    `pr1` varchar(50) NOT NULL, 
    `pr2` varchar(50) NOT NULL, 
    `mnm` double NOT NULL, 
    `max` double NOT NULL, 
    `dias` int(10) NOT NULL DEFAULT '1', 
    `categoria` varchar(50) NOT NULL, 
    PRIMARY KEY (`id`,`cla`) 
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8; 

Id和CLA是主鍵,但我需要保持完整,這種結構允許複製「勞委會」值:F/E:

Id | Cla 
01 | ADI001 
02 | ADI001 

而我需要避免重複「cla」值,儘管「id」值,我該怎麼做?謝謝。

回答

0

cla上創建一個唯一索引。添加該行:

unique key cla