在SQL Server 2005中的波斯号(Persian numbers in SQL Serve

2019-09-18 12:40发布

我想一些波斯文字添加到我的SQL Server 2005数据库。

有字母没问题,但波斯号码( ۱،۲،۳،... )转换为? ...

例如,如果我这个文本(加سلام ۱۲۳۴‍‍‍ )数据库,会出现( سلام ؟؟؟؟ )数据库/

我该怎么办? (例如,哪个归类应该使用?)

我使用Arabic_CI_AS整理。 在这个列表中,波斯语归类Arabic_CI_AS (SQL Server 2005中没有Persian整理,但2008年有!)

注:我不能使用SQL Server的新版本...

Answer 1:

If you insert string literals, be sure to mark Unicode strings with N'', such as

select N'سلام ۱۲۳۴‍‍‍'

Next, make sure whether the question marks are only a display problem in SSMS:

declare @t nvarchar(50) = N'سلام ۱۲۳۴‍‍‍'
select unicode(substring( @t, 1, 1))
select unicode(substring( @t, 2, 2))
select unicode(substring( @t, 3, 3))
select unicode(substring( @t, 4, 4))

returns the Unicode values for each character:

1587
1604
1575
1605

I remember that SSMS 2005 had problems displaying certain Unicode ranges in the results window.



Answer 2:

您可以使用Arabic_CI_AI整理和解决这个问题,我希望能够帮助你..



文章来源: Persian numbers in SQL Server 2005