解决数据库保存中文乱码问题
2023-09-11 14:20:33 时间
输入中文时数据库中显示为乱码,提供以下两种解决方案:
1.修改字段类型
varchar是采用单字节存数
nvarchar采用的是unico编码,存储两个字节
一个英文字母存varchar格式,占一个字节;存nvarchar占2个字节。
varchar也可以存储中文,如果系统不支持中文,就会出现乱码(??)。
nvarchar的另一个好处是在判断字符串的时候可以不考虑中英文差别。
在存储代价低廉的情况下,推荐使用nvarchar,在确保不会出现中文的情况下可以采用varchar。
在语句中使用N,N表示unicode的意思,表示按unicode进行编码.
如:
insert into UserInfo(UserName) values (NXXXX)
2.修改数据库的排序规则解决问题
假设数据库名为testDB
alter database testDB collate Chinese_PRC_CI_AS;执行成功的前提是要关闭其它连接
最新内容请见作者的GitHub页:http://qaseven.github.io/
数据库字符集编码 你的数据库和 JDBC 数据源连接必须配置为使用 UTF-8 编码(或者根据你配置的数据库来制定正确的 UTF-8 编码字符集,例如在 Oracle 中使用的是 AL32UTF8 )。
相关文章
- Qt-开发环境中的代码中文显示正常,但是运行后是乱码?
- win10 mysql数据库中文乱码
- servlet中文数据存入数据库为乱码的解决办法
- Nginx配置参数中文详细说明
- docker中文、手册、教程
- php的ord函数——解决中文字符截断问题
- Android 中文 API 文档 (45) —— AbsoluteLayout.LayoutParams
- 【PHP】解决数据库查询出来的中文内容显示为问号“??”
- 成功解决连接SQL输出出现中文乱码问题(10001, 'oracle¿ìËÙÈëÃÅ', 'Íõº£ÁÁ', 'Ë®Àû³ö°æÉç',
- PHP计算中文字符串长度 、截取相应中文字符串
- MySQL----MySQL数据库插入中文报错或者乱码问题的解决办法