mysql
Y+。
Java后端
展开
-
mysql插入数据,根据相关字段判断这条数据是否存在,存在就不插入,不存在就插入
在整理数据时,面临数据的插入操作,如果数据库已经有了这个数据,将不插入,如果是数据库中没有这个数据将直接插入。insert into bag_claim (cmpt_id,enroll_id,mark_no,work_id,goods_id,create_time,update_time) select 13824,9959055,'C5650',411,1,NOW(),NOW() from dual where not exists (select 1 from bag_claim where cmpt转载 2021-03-19 15:26:38 · 2006 阅读 · 0 评论 -
@SelectKey 注解的使用
我们在插入数据的时候,希望插入完可以返回插入数据的主键,这时候使用 @SelectKey 即可解决,而不是之前的再去查询一下,然后查到主键去使用以下摘抄自官网官网写的挺详细的,所以直接使用原内容了!!!1、@SelectKey简介@SelectKey注解的作用域是方法,效果与标签等同。@SelectKey注解用在已经被 @Insert 或 @InsertProvider 或 @Update 或 @UpdateProvider 注解了的方法上。若在未被上述四个注解的方法上作 @SelectKey转载 2020-08-24 14:00:41 · 1560 阅读 · 0 评论 -
mysql强制索引的使用方法
今天在优化一个sql的时候,由于sql加了is not null的条件判断,致使此条件没有使用建好的索引,所以使用了强制索引,sql语句竟然由 4分钟变成了十几秒,使用方法如下:select 字段 from 表名 force index(索引名称) where 条件由于暂时还没找到使用强制索引不好的地方。所以暂时先在项目中使用了,到时候遇到不好的地方再告诉大家!!!好啦,收工!!!散会!!!...原创 2020-07-14 13:48:15 · 1016 阅读 · 0 评论 -
Cause: java.sql.BatchUpdateException:Data truncation: Data too long for column 'author' at row 1
今天在线上插入数据的时候发现失败,查看日志发现如下的报错信息:Cause: java.sql.BatchUpdateException:Data truncation: Data too long for column ‘author’ at row 1原因是因为这个字段在数据库中的类型是Varchar ,赋值给的是200Varchar 的长度是很有限的如果可以,将数据库中这个字段的类型变为 Text、mediumtext,longtext 这几种类型即可如果没有数据库的操作权限,也自己原创 2020-05-12 11:33:51 · 2426 阅读 · 0 评论