- 使用select * from xxx where ‘name’ = ‘abc’ 时会把abc和ABC等都查出来?
- 因为mysql 不区分大小写;
- 解决:使用binary关键字转换成二进制
- SELECT * form ( SELECT * FROM xxx WHERE
name
= ‘abc’) WHERE BINARY ‘name’= ‘abc’ - binary转换花费时间,数据量较大时先查出来在用提高效率。
2.今天碰到一个问题就是我在批量更新数据的时候,同时也会新增一些数据
点击保存按钮,会更新数据库的数据,但是增加的数据也要插入进去。
这时可以用 on duplicate key update
作用:当执行insert操作时,有已经存在的记录,执行update操作。
<insert id="updateCfgRemote">
insert into cfg_remote (id,name,ip) values
<foreach collection="list" item="item" separator=",">
(#{item.id},#{item.name},#{item.ip})
</foreach>
on duplicate key update
name = values (name ),
ip = values (ip)
</insert>
…2022.10.13
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/111659.html