2016-12-07 6 views
-1

動作しない私のテーブルです:MySQLの一意のキーはここに

CREATE TABLE `loan_table` (
`ID` bigint(38) NOT NULL AUTO_INCREMENT, 
`LOAN_ID` bigint(38) DEFAULT NULL, 
`PLAN_ID` bigint(38) NOT NULL, 
`EXT_LOAN_APP_ID` bigint(38) DEFAULT NULL, 
`REDISTRIBUTE_TIME` datetime DEFAULT NULL, 
PRIMARY KEY (`ID`), 
UNIQUE KEY `IDX_UN_LOAN_PLAN_APP`(`LOAN_ID`,`PLAN_ID`,`EXT_LOAN_APP_ID`,`REDISTRIBUTE_TIME`) 
) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8; 

私は4列(LOAN_ID、PLAN_ID、EXT_LOAN_APP_ID、REDISTRIBUTE_TIME)に一意のキーを追加しますが、私は何度も何度も挿入SQLの下に実行することができます。ユニークなインデックスで

INSERT INTO `loan_table` (`LOAN_ID`, `PLAN_ID`,`EXT_LOAN_APP_ID`, `REDISTRIBUTE_TIME`) 
VALUES 
(435870, 0, 2369, NULL); 
+0

もちろん可能です。 'null'は特別な値です。ここには問題はありません。期待どおりに機能し、ドキュメントを正しく読まなかっただけです。 – Mjh

答えて

1

、ユニークvalue.SoとしてNULL mysqlの扱いは、これらの値は、繰り返し

(435870, 0, 2369, NULL); 

を挿入することができます列がNULLと空の文字列にデフォルトではありませんしてください。

関連する問題