php sqlserver数据库 汉字乱码

在建立进行php,java编程时,不少人用的是mysql数据库的时候,习惯上都是选utf-8这个选项。
而对于sqlserver数据库,一般我们都是在简体中文操作系统下来安装的sqlserver,它的数据库字符集也就跟着是简体中文的了(字符集gb2312)。
在这里插入图片描述
经过1天的折腾,总结下:
一切以数据库格式为准(包括转换后的格式)

代码中变量的格式:
在什么样格式上,直接录入的(汉字),就是什么样格式的。
如果是传参过来的,原来是啥格式就还是啥格式。

例如:
往GBK 格式库里写(sqlserver),把不是GBK的部分(如php是gbk,那直接录入的是gbk,如果传入参是utf-8,那utf-8这个参数就要转gbk )转成GBK再写库。

往utf-8 格式库里写(sqlservel用php转成utf-8),把不是utf-8的部分(如php是gbk,那直接录入的是gbk,那需要转成utf-8,如果传入参是utf-8,就不变 )转成utf-8再写库。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: SQL Server数据库出现乱码的原因可能是由于安装设置时未考虑到默认的排序规则是拉丁文的排序规则,导致在使用过程中出现乱码。\[1\]解决这个问题的方法是在安装时选择正确的排序规则或者在已安装的数据库中修改排序规则。另外,还可以通过设置连接URL中的字符编码参数来解决乱码问题。例如,可以在连接URL中添加"useUnicode=true;characterEncoding=utf-8"来指定使用UTF-8编码。\[2\]此外,还需要确保ASP页面是UTF-8编码的,并在页面顶部进行编码声明。同时,在进行URL参数传递时,需要使用相应的编码方法进行编码,如Server.URLEncode()方法或escape方法。另外,在将UTF-8编码的内容存入SQL Server数据库时,需要将相应的字段设置为NVARCHAR类型,并在SQL语句中使用N前缀表示存储的是Unicode字符。\[3\]通过以上方法,可以解决SQL Server数据库乱码问题。 #### 引用[.reference_title] - *1* [SqlServer数据库中文乱码问题解决](https://blog.csdn.net/u011127019/article/details/51376917)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [SqlServer数据库中文乱码问题解决方法](https://blog.csdn.net/Alex_81D/article/details/130424186)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值