【发布时间】:2013-12-04 04:06:32
【问题描述】:
在尝试使用 PHP 从我的 SQL Server 数据库中 SELECT 类型为 nvarchar 的列时,我遇到了一个熟悉的问题:
Unicode data in a Unicode-only collation or ntext data cannot be sent to clients using DB-Library (such as ISQL) or ODBC version 3.7 or earlier.
我知道我可以使用 SELECT CAST(columnName as TEXT) as columnName from tableName... 来解决这个问题,但这很麻烦而且很烦人。加上Adminer只要有这个错误就不能工作,我不能将Adminer配置为CAST它的列名。
在similar questions 和PHP docs 中,许多人提到您可以通过更改文件/etc/freetds.conf/ 来解决此问题...但我使用的是Windows,而不是*nix,因此不存在此类文件。 (我联系了托管公司的支持人员以确认这一点。)
有什么方法可以选择nvarchar 列,而不必每次都添加烦人且乏味的CAST 样板文件?并让管理员工作?
或者我唯一的选择是切换到与 DB-Library 不同的驱动程序吗?
【问题讨论】:
-
你解决了吗?我也有同样的问题
-
对不起,这个项目最终被放弃了......如果我解决了这个特定问题,我这辈子都不记得了。
标签: php sql-server unicode