当前位置:  开发笔记 > 编程语言 > 正文

PHP/PDO和SQL Server连接以及i18n问题

如何解决《PHP/PDO和SQLServer连接以及i18n问题》经验,为你挑选了0个好方法。

在我们的网络应用程序中,我们使用PHP5.2.6 + PDO连接到SQL Server 2005数据库并存储俄语文本.

数据库整理是Cyrillic_General_CI_AS,表格整理是Cyrillic_General_CI_AS,列类型是NVARCHAR(MAX).

我们尝试使用以下两种方案连接到数据库,两者都会导致不同的问题.

    PDO mssql:

    $dbh = new PDO ('mssql:host='.$mssql_server.';dbname='.$mssql_db, $mssql_login, $mssql_pwd);
    

    在这种情况下,这样的简单查询的结果:

    SELECT field1 FROM tbl1 WHERE id=1
    

    显示field1截断为255个字节的数据.

    PDO odbc:

    $dbh = new PDO ('odbc:DSN=myDSN;UID='.$mssql_login.';PWD='.$mssql_pwd);
    

    在这种情况下,同一查询的结果显示完整的非截断数据,但带有问号而不是俄语符号.


笔记:

在SQL Management Studio中,数据不会被截断,俄语符号也会正确显示.

我们有Windows 2003 Enterprise Edition SP2

那么我们应该选择什么作为连接方法以及如何解决相应的问题呢?

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有