用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2033|回复: 0
收起左侧

[版本 3.x] CI连接SQLServer中文字段问题

[复制链接]
发表于 2016-9-14 17:13:39 | 显示全部楼层 |阅读模式
本帖最后由 aniven 于 2016-9-14 17:15 编辑

CI 3.0 + SqlServer 2008 + ODBC Driver 11 for Sql Server + PHP Driver for Sql Server
最开始字段中文内容显示都有问题,后来参考 https://msdn.microsoft.com/en-us/library/cc626307.aspx 解决了(字段类型必须nchar或nvarchar),但如果sql语句中包含中文则运行后没有任何结果,连错误都没有。按文章中说PHP Driver for Sql server 支持utf8读写,应该不用做特殊处理,有说用iconv函数转换sql的(如:$sql = iconv('UTF-8', 'GBK//IGNORE', 'select userid 用户, uname 姓名 from users');),但是转换后执行出现错误:

A Database Error Occurred
Error Number: IMSSP/-46
An error occurred translating the query string to UTF-16: �ڶ��ֽڵ�Ŀ������ҳ�У�û�д� Unicode �ַ�����ӳ�䵽���ַ��� .
select userid [�û���],uname [����] from users
Filename: D:/HTDOCS/system/database/DB_driver.php
Line Number: 691


请问有无解决办法?

本版积分规则