关于模糊查询和插入数据乱码问题

zhupengqq zhupengqq     2023-04-02     423

关键词:

碰到了模糊查询的问题;因为我查询的关键字是中文,导致刚开始出现了很多问题;ResultSet rs-> 比如: select * from book where bookName = ‘操作系统‘;明明这条语句是可以在mysql数据库中查到的,但是 rs.next()却始终未false;这很奇怪,我唯一能想到的原因就是中文乱码问题;果然经过查阅资料;找到了解决方法;

就是你在写URL时要加上编码的格式: ->this.URL = "jdbc:mysql://localhost:3306/bookshopping?characterEncoding=utf8"; 这个URL就是 ct = DriverManager.getConnection(URL, USER, PASSWORD);相信不用我多说.这样就可以正常的使用中文查询语句了;

2.解决模糊查询的问题;

模糊查询语句一般为:select * from book where bookName like ‘%操作系统%‘;但是如果真的这样写的话,是绝对查不出来的,而且会报错(具体报错的内容我就不说明了);那么解决方式就是:使用通配符?

select * from book where bookName like ?;

然后使用prepareStatement 的setString方法;

比如:

String str = "操作系统";

 ps.setString(1,"%" + str +"%");就可以解决了

 

不使用通配符情况下  在查询的时候可以这样写

String sql="delete from prep where id='"+id+"'";

String sql = "select  * from trave where flag='热点线路' order by id desc";

今天早上很早就起床了,就一直在改通配符的问题,结果换数据库连接方式,又改通配符,转义字符,等等。还是不起作用,

最终我发现

    con = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_jzggl?useUnicode=true&characterEncoding=UTF-8", "root", "root");

这样写有时候也会报错,导致编码有问题,乱码

如果遇到这种问题,这样不行,那就采用下面这种方式

    con = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_jzggl?characterEncoding=UTF-8", "root", "root");

这样就可以了

关于sql模糊查询大全(转)

...糊查询语句如下:SELECT字段FROM表WHERE某字段Like条件其中关于条件,SQL提供了四种匹配模式:1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。比如SELECT*FROM[user]W... 查看详情

02-unit08:搜索笔记功能搜索分页处理插入数据库乱码问题

搜索笔记功能按键监听事件$("#search_note").keydown(function(event){varcode=event.keyCode;if(code==13){请求发送}})select*fromcnsharecnshare_titlelike‘%‘发送Ajax请求事件绑定:键盘监听事件(keydown)获取参数:keyword,作为模糊查询的基础发送请求:/share/find 查看详情

关于 SQL 插入语句的问题

】关于SQL插入语句的问题【英文标题】:IssueonSQLInsertStatement【发布时间】:2013-08-0310:29:10【问题描述】:我在MSACCESS数据库中遇到错误“查询值和目标字段的数量不一样”这是我的查询:我将其命名为QryMetricsSELECTA,B,C,D,E,FFROM(SELE... 查看详情

向数据库中插入数据时字符集或查询是数据无法正常显示出现乱码问题

 当向数据库插入数据出错或出局无法正常显示出现乱码时。首先应该想到的是数据库的编码问题。查看当前数据库服务器默认对数据库处理的字符集   showvariableslike ‘character_set%‘;  character_set_client;默认客户端来... 查看详情

java:jdbc连接数据库插入中文数据乱码问题

关于乱码问题无非就是编码方式不一致导致的。今天在通过jdbc连接数据库后,本打算在数据库插入一条中文数据,但是数据表中一直乱码,像这样:中文使用???代替。首先通过jdbc连接数据库后插... 查看详情

关于数据库更新/插入速率限制的一些查询(基于 SQL 或基于 NoSQL)

】关于数据库更新/插入速率限制的一些查询(基于SQL或基于NoSQL)【英文标题】:somequeriesregardingupdates/insertsratelimitsforadatabase(SQL-basedorNoSQLbased)【发布时间】:2012-08-3021:28:39【问题描述】:在一个应用程序中,我需要更新大量记... 查看详情

mybatis的foreach批量模糊like查询及批量插入

使用mybatis平时都是用遍历集合in()…,其实还可以多模糊查询和批量操作等其他操作,要明白foreach元素的属性主要意义,灵活使用,举例如下。1、根据多个品牌名字分类,模糊搜索数据,主要利用separator&#... 查看详情

hbaseint类型字段存储乱码

...了乱码问题,总结一下。直接往HBase表里写int,通过shell查询可以看到是一堆字节数组,hbase存储所有数据都是用过Byte数组的形式,但是里面除了String以外,其他类型通过shell查询,无法正常显示的,但是String类型的数据,shell则... 查看详情

mybatis的foreach批量模糊like查询及批量插入(代码片段)

使用mybatis平时都是用遍历集合in()…,其实还可以多模糊查询和批量操作等其他操作,要明白foreach元素的属性主要意义,灵活使用,举例如下。1、根据多个品牌名字分类,模糊搜索数据,主要利用separator&#... 查看详情

关于sql语句模糊查询

我想模糊查询后面的条件。如selectsum(A)fromBwhereCin('211.140.17.81','211.140.17.82','211.140.17.83','211.140.17.84','211.140.17.85','211.140.2.36');参考技术A按照楼主的那意思,在in内还要进行模糊查询,这样没多大... 查看详情

关于lucene怎么使用spanquery进行模糊搜索

怎么用这种Query进行模糊搜索呀我试过了这个好像只能做精确搜索,如何做模糊搜索呢Lucene版本3.5参考技术ASpanQuery是按照词在文章中的距离或者查询几个相邻词的查询。打个比方:如“中华人民共和国”用“中国“做为关键字,... 查看详情

map和模糊查询拓展

Map和模糊查询拓展1.Map大概意思就是对比一开始的插入手法如果参数过多比方说用户的性格长相爱好。。。N个参数你全部加进去就很麻烦如果用Map我添加修改某位用户的密码就很方便不用输入全部的参数2.模糊查询测试:为... 查看详情

oracle数据库插入中文乱码(代码片段)

一.查询数据库编码selectuserenv(‘language‘)fromdual;查询服务器编码select*fromv$nls_parameters;推出sql查询系统编码[email protected]:/#localeLANG=LANGUAGE=LC_CTYPE="POSIX"LC_NUMERIC="POSIX"LC_TIME="POSIX"LC_COLLATE="POSIX 查看详情

android使用edittext+listview实现搜索效果(使用room模糊查询)(代码片段)

...三、EditText对应的回车事件获取四、博主相关文章Listview关于动态搜索关于room前言在很久之前发了一篇关于room的增删改查的文章,最近有粉丝问到关于room模糊查询的问题,博主用自己以前写的APP来写一篇相关的文章。Demo... 查看详情

postgresql模糊查询(like和~)引用变量

群里看到关于变量替换语句的问题,兴趣来了就研究一下过滤包含pg_sleep的查询,拼接terminate_backend命令postgres=#\\setquerystrpg_sleeppostgres=#\\echo:querystrpg_sleeppostgres=#Select'selectpg_terminate_backend('||pid||');' from... 查看详情

项目中查询数据和模糊查询

 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~开发工具与关键技术:WPF、Select撰写日期:2020年08月07日~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 一、在项目中要查询出数据要做四个步骤: 查看详情

关于oracle分区实现和操作的几个问题

...uot;组合分区,创建时报错:ORA-14151:无效的表分区方法3.关于sxdtgsh兄的回答,我测了3.1没有maxvalue上限分区设置,在插入超出分区的数据时会报错ORA-14400:插入的分区关键字未映射到任何分区3.2按回答的语句创建分区表没有问题... 查看详情

mybatis的foreach批量模糊like查询及批量插入(代码片段)

使用mybatis平时都是用遍历集合in()…,其实还可以多模糊查询和批量操作等其他操作,要明白foreach元素的属性主要意义,灵活使用,举例如下。1、根据多个品牌名字分类,模糊搜索数据,主要利用separator&#... 查看详情