我正在使用一个可能用 VB6 编写的非常古老的软件,该软件已停产多年。本软件使用 SQL Server 2005 数据库。我的目标是在我的 PHP 应用程序中使用这个数据库。
问题是字符编码。数据库的编码是Polish_CI_AS
根据 Microsoft SQL Server Management Studio。根据我的理解,这可能是或者是WINDOWS-1250
。行是类型CP1250
ISO-8859-2
nvarchar
现在这是我在使用 SQL Server Management Studio 时看到的
这显然是坏的,它应该是:
Nom: Markowska -Kwestionariusz(+)
Prenom: Magdalena
Tel3: 我不想发布它,但数据库中的数字混淆了
然而,这个 VB6 软件正确地显示了这些值,这对我来说是最大的谜团。奇怪的是 NATIVE SQL Server Management Studio 首先显示不正确。在 PHP 中,我尝试使用iconv()
将其转换为UTF-8
但没有成功。我尝试了上面提到的这 3 种字符编码类型,结果是一样的。我正在使用 PDO+ODBC 连接,尝试了所有 3 种编码方法。都失败了。
有没有人经历过类似的事情,或者[]
每行值开头的这个神秘字形看起来很相似?还whitespace
用货币字符替换,¤
所有这些都跟着错误的字符顺序?
提前感谢任何提示和建议:)