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:
org.hibernate.exception.ConstraintViolationException:
同时,为了效验不重复的字段,我们可以遵循hibernate同时持有id字段和version字段的最佳实践,
这样会更加轻松的解决问题.