从程序向SQL数据库输入汉字,但是都变成了问号,求解决方案!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从程序向SQL数据库输入汉字,但是都变成了问号,求解决方案!相关的知识,希望对你有一定的参考价值。

String sqlbb="insert into author(sn,author) values('"+tfl1.getText()+"','"+ tfl9.getText()+"')";
能显示数据库里的汉字,但是不能用汉字查找和添加,应该怎么改?

编码不对应。

按UTF-8统一编码。

SQL Server?
String sqlbb="insert into author(sn,author) values(N'"+tfl1.getText()+"',N'"+ tfl9.getText()+"')";
参考技术A 设置过数据库编码没有?或者在建表的时候声明编码方式?追问

字符集是 uft8,gbk和gb2312也试过

追答

IDE或者编码工具的字符集设置了?

追问

额~在哪里怎么设置?能说具体点吗?

追答

你用的什么数据库?什么编程语言?用的什么IDE?还有就是你说的能显示数据库的汉字,是说可以查询到字段内容是汉字的数据库表?但又不能使用where子句?

追问

已解决,不过还是谢谢。就是在定位数据库时加上?characterEncoding=utf-8就可以了

追答

mysql的话也可以在my.ini中设置。都有类似的设定。你可以注意一下

本回答被提问者采纳

springboot写入数据库汉字变问号???

用spring boot做的项目,后台向数据库中写入汉字,变成了问号,但是后台确实是向数据库中传递的汉字,数据库也是使用的utf8编码,怎么回事?
检查一下spring boot和数据库中的连接问题:
在application.properties application.propertiesapplication.properties里面的数据库连接中加入

&useUnicode=true&characterEncoding=UTF-8

比方说我的数据库连接加入上面这一行之后变成

spring.datasource.url = jdbc:mysql://39.107.124.222:3306/teach_system?serverTimezone=UTC&useUnicode=true&characterEncoding=UTF-8

 

以上是关于从程序向SQL数据库输入汉字,但是都变成了问号,求解决方案!的主要内容,如果未能解决你的问题,请参考以下文章

从mysql数据库读出的数据怎么是问号(?)

在数据库表里输入汉字后变成问号????这是为啥??

oracle 为啥汉字变成了问号,怎么改,如下图

springboot写入数据库汉字变问号???

PHP执行SQL并将返回数据显示到网页上为啥汉字会变成问号

SQL中向表中添加的字符都变成问号了,啥情况?怎么处理?