可以有用于SQL Server两个可能的原因,以显示像????????
原因一些unicode数据1.
当unicode数据寰插入或更新到 柱用户didnt与N
前缀字符串。
原因2.
列本身isnt NVARCHAR表示它不允许存储要存储的Unicode字符的 。
例
DECLARE @TABLE TABLE
(Column1 VARCHAR(100), --<-- VARCHAR DataType
Column2 NVARCHAR(100), --<-- NVARCHAR DataType
Column3 NVARCHAR(100)COLLATE Arabic_CI_AS --<-- NVARCHAR DataType with specific
) -- arabic collation
INSERT INTO @TABLE VALUES
('هذا هو العربي','هذا هو العربي', 'هذا هو العربي'), -- Data with out N Prefix
(N'هذا هو العربي',N'هذا هو العربي', N'هذا هو العربي') -- Data with N Prefix
SELECT * FROM @TABLE
结果
╔═══════════════╦═══════════════╦═══════════════╗
║ Column1 ║ Column2 ║ Column3 ║
╠═══════════════╬═══════════════╬═══════════════╣
║ ??? ?? ?????? ║ ??? ?? ?????? ║ ??? ?? ?????? ║
║ ??? ?? ?????? ║ هذا هو العربي ║ هذا هو العربي ║
╚═══════════════╩═══════════════╩═══════════════╝
只有数据在哪里列允许存储Unicode字符和当我使用的N-前缀将具有存储在其余的数据仅表示???????。
在你的情况下,你只是丢失了数据,你不可能将它转换回unicode /阿拉伯字符。 Ouch:S
需要更多信息。你如何从服务器获取'feed'对象(显示你的代码)?服务器用什么格式和编码发送响应? –
不,我不是.. –
@MartinR好的。我正在使用私有库来访问远程sql服务器,我从数据库中获得这个结果。 – user3094994