语法:
UNIQUE KEY `test` (`xref_key`,`xref_dbname`) UNIQUE KEY `xref_key` (`xref_key`,`xref_dbname`)
---------------------------------------------------
CREATE TABLE `TB_REGION` ( `ID` bigint(20) NOT NULL auto_increment, `VERSION` decimal(10,0) default NULL, `REGION_NAME` varchar(80) NOT NULL default '', `REGION_DESC` varchar(255) NOT NULL default '', `ACTIVE_IND` tinyint(1) default NULL, `REMARKS` varchar(255) default NULL, `CREATE_BY` bigint(20) default NULL, `CREATE_TS` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `UPDATE_BY` bigint(20) default NULL, `UPDATE_TS` timestamp NOT NULL default '0000-00-00 00:00:00', `SHOWINDEX` int(11) NOT NULL default '9999', PRIMARY KEY (`ID`), UNIQUE KEY `INDEX_REGION_NAME` (`REGION_NAME`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
我使用了hibernate+spring 如果值重复,就会抛出如下异常 org.springframework.dao.DataIntegrityViolationException:
同时,为了效验不重复的字段,我们可以遵循hibernate同时持有id字段和version字段的最佳实践,
这样会更加轻松的解决问题.
---------------------------------------------------
|
MySQL 中通过使用UNIQUE KEY 来控制字段值不重复的问题.
最新推荐文章于 2024-07-29 18:28:48 发布