CREATE TABLE IF NOT EXISTS `mytable` (
`machine_no` varchar(50) CHARACTER SET ascii NOT NULL,
`date` datetime NOT NULL,
`nature` int(11) DEFAULT NULL,
`start` time NOT NULL,
PRIMARY KEY (`machine_no`,`date`),
UNIQUE KEY `date` (`date`),
UNIQUE KEY `start` (`start`),
UNIQUE KEY `start_2` (`start`),
UNIQUE KEY `nature` (`nature`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
このテーブルには複合キーがあります。
同じ日付/時刻で machine_no の値が異なる 2 つのレコードを挿入しようとすると、. 日付の重複エントリと表示されます。その理由がわかりません。複合キーであるため、両方の属性で重複するエントリのみを検索する必要があります。