首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SQL Server 2012中的字符编码

SQL Server 2012中的字符编码
EN

Stack Overflow用户
提问于 2013-12-25 12:36:23
回答 1查看 2K关注 0票数 0

我有一个数据库( Server 2012),它有大量的Unicode数据。插入自web应用程序但字符的记录保存在web字符编码‘want’中,但当浏览器显示这些数据时,它们是Unicode,浏览器自动将其字符编码更改为' Unicode‘,并显示字符正确,但我希望在应用程序中使用这些数据,并在真正的Unicode字符中进行更改。

例如,字符保存在这样的表中(使用'western‘编码):

代码语言:javascript
复制
Ù¾ÛŒØ´Ø±ÙØª 50 درصدی مخزن ذخیره آب بوشهر

我想把它们转换成unicode编码,如下所示:

代码语言:javascript
复制
پیشرفت 50 درصدی مخزن ذخیره آب بوشهر  
EN

回答 1

Stack Overflow用户

发布于 2013-12-25 13:14:45

正如Martin和marc_s所解释的,如果要使用unicode字符,就需要使用NVARCHAR数据类型。或者您可以在特定的阿拉伯语排序规则中使用VARCHAR数据类型,如下所示

代码语言:javascript
复制
CREATE TABLE #TestTable
(
Column1 VARCHAR(100) COLLATE Latin1_General_100_CI_AI,  --<-- VARCHAR Column with Default Collation
Column2 VARCHAR(100) COLLATE Arabic_CI_AI_KS_WS,        --<-- VARCHAR Column with Arabic Collation
Column3 NVARCHAR(100),                                  --<-- NVARCHAR Column with Default Collation
Column4 NVARCHAR(100) COLLATE Arabic_CI_AI_KS_WS        --<-- NVARCHAR Column with Arabic Collation
)
INSERT INTO #TestTable 
VALUES(N'پیشرفت 50 درصدی مخزن ذخیره آب بوشهر'
       ,N'پیشرفت 50 درصدی مخزن ذخیره آب بوشهر'
       ,N'پیشرفت 50 درصدی مخزن ذخیره آب بوشهر'
       ,N'پیشرفت 50 درصدی مخزن ذخیره آب بوشهر')

SELECT * FROM #TestTable

结果

代码语言:javascript
复制
Column1                               Column2                               Column3                             Column4
?????? 50 ????? ???? ????? ?? ?????   پيشرفت 50 درصدي مخزن ذخيره آب بوشهر   پیشرفت 50 درصدی مخزن ذخیره آب بوشهر پیشرفت 50 درصدی مخزن ذخیره آب بوشهر
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20772855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档