SQL查询语句中参数带有中文查询不到结果

Posted professorxin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL查询语句中参数带有中文查询不到结果相关的知识,希望对你有一定的参考价值。

今天写个小demo的时候发现sql语句里面的username为中文的时候就不能查到正确结果,sql语句如下:

String sql = "select * from user where username=? and password=?";

 

但是在navicat里面直接查询就能显示,如下图:

这说明了sql语句的中文并没有能正确转化

 

最后找到了解决办法,在连接数据库的url后面添加?useUnicode=true&characterEncoding=utf8

"jdbc:mysql://localhost:3306/sql_injection?useUnicode=true&characterEncoding=utf8";

 

以上是关于SQL查询语句中参数带有中文查询不到结果的主要内容,如果未能解决你的问题,请参考以下文章

关于SQL语句条件值写中文查不到的问题

为啥我的带有命名参数的查询返回空白结果?

Laravel 5.8 有条件地插入 sql 片段

如何将带有内连接语句的 Sql 查询转换为带有 Where 语句的 sql 查询(语句中没有内连接)

在PLSQL, sql语句中带有中文的查询条件查询不到数据

带参数的sql查询语句