ALTER TABLE circle_like ADD UNIQUE KEY(read_circle_id, user_id);
try{
     circleLikeService.insertSelective(circleLike);
     Map<String, Object> map = new HashMap<>();
     map.put("circleLike", circleLike);
     return new JsonResult(ResultCode.SUCCESS, "成功", map);
 }catch (DuplicateKeyException e){
     return new JsonResult(ResultCode.EXIST_RESOURCE, "您已喜欢过,请不要重复点击");
 }catch (Exception e){
     return new JsonResult(ResultCode.SYS_ERROR);

好吧,没啥写的,水一贴

   应用于表创建完毕之后再添加
//普通索引
alter table table_name add index index_name (column_list) ;
//唯一索引
alter table table_name add unique (column_list) ;
//主键索引
alter table table_name add primary key (column_list) ;
 CREATE INDEX可用于对表增加普通索引或UNIQUE索引,可用于建表时创建索引。
CREATE INDEX index_name ON table_name(username(length)); 
  如果是CHAR,VARCHAR类型,length可以小于字段实际长度;如果是BLOB和TEXT类型,必须指定 length。
//create只能添加这两种索引;
CREATE INDEX index_name ON table_name (column_list)
CREATE UNIQUE INDEX index_name ON table_name (column_list)
删除索引可以使用ALTER TABLEDROP INDEX语句来实现。DROP INDEX可以在ALTER TABLE内部作为一条语句处理,其格式如下:
drop index index_name on table_name ;
alter table table_name drop index index_name ;
alter table table_name drop primary key ;
ALTER TABLE circle_like ADD UNIQUE KEY(read_circle_id, user_id);try{ circleLikeService.insertSelective(circleLike); Map&amp;amp;lt;String, Object&amp;amp;gt; map = new HashMap&amp;amp;lt;&amp;amp;gt;(); map.put(&amp;quot;c...
当unique列在一个UNIQUE键上插入包含重复值的记录时,我们可以控制MySQL如何处理这种情况:使用IGNORE关键字或者ON DUPLICATE KEY UPDATE子句跳过INSERT、中断操作或者更新旧记录为新值。 mysql> create table menus(id tinyint(4) not null auto_increment, -> label varchar(10) null,url varchar(20) null,unique key(id)); Query OK, 0 rows affected (0.13 sec) mysql> insert int
create table error_log ( id bigint(20) not null auto_increment, error_code varchar(50) default null, error_message varchar(500) default null, routine_name varchar(50) default null, create_time ti. |-- java.sql.SQLException |-- SQLNonTransientException |-- SQLIntegrityConstraintViolationException //新增机型 aircraftService.save(aircraft); return R.ok(aircraft.getId()); }catch (Exception e){ Thr..
转自:https://blog.csdn.net/wenniuwuren/article/details/88887813 很多时候只要觉得捕获 DuplicateKeyException 就行,其实这样还不够,底层还会抛出其他异常类型,完整的捕获如下: import org.springframework.dao.DuplicateKeyException; public void method() { try { result = dao.inser
alter table 表名 add constraints 约束名称(多个约束名称不能相同) primary key(添加约束的字段); --添加唯一约束,tab_check_unique表示约束的名称 alter table tab_check add constraints tab_check_unique un
本系列文章主要介绍如何捕捉处理MySQL异常以及实战演练展示,参考于MySQL5.6官方文档(http://dev.mysql.com/doc/refman/5.6/en/index.html) 和 ZHDBA官网之MySQL数据库的例外处理测试(http://www.zhdba.com/mysqlops/2013/08/31/mysql-handler-2/)。 异常捕捉原因 A fatal error has been detected by the Java Runtime Environment: # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000180005b00, pid=16516, tid=0x0000000000004a60 # JRE version: Java(TM) SE Runtime Environment (8.0_261-b12) (build 1.8.0_261-b12) # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.261-b12 mixed mode windows-amd64 compressed oops) # Problematic frame: # C [rxtxSerial.dll+0x5b00] # Failed to write core dump. Minidumps are not enabled by default on client versions of Windows 我本地报这个错了,谁有遇到过 springboot 2.0.3使用Lettuce Redis并配置 pool Print_lin: 在71行后应当加上[code=java] factory.afterPropertiesSet(); [/code] 即初始化连接信息 java8 获取指定日期零点和结束时间戳 1001.2014.3001: [code=java] public static String date2String(Date date, String pattern) { DateTimeFormatter ofPattern = DateTimeFormatter.ofPattern(pattern, Locale.CHINA); LocalDateTime localDateTime = date2LocalDateTime(date); return ofPattern.format(localDateTime); [/code] java8 获取指定日期零点和结束时间戳 Evan Guo: [code=java] public static String data2String(Date date, String format) { SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format); return simpleDateFormat.format(date); [/code]