これに対する1つの解決策は、ID
を使用することです。 主キーとして、var1, var2, var3, year
UNIQUE KEY
を使用した代替キーとしてのフィールド 制約
したがって、テーブル定義は次のようになります。
CREATE TABLE `tbl_result` (
`ID` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT ,
`var1` DECIMAL(6,2) UNSIGNED NOT NULL ,
`var2` DECIMAL(3,2) UNSIGNED NOT NULL ,
`var3` INT(11) UNSIGNED NOT NULL ,
`year` INT(4) UNSIGNED NOT NULL ,
`result` DECIMAL(8,4) NOT NULL ,
PRIMARY KEY (`ID`),
UNIQUE KEY (`var1`, `var2`, `var3`, `year`)
);
UNIQUE KEY
制約により、フィールドの重複挿入が防止されます。