如何在SQL数据库中添加西班牙语重音



我正在尝试修改SQL中链接到PDF和Word文档生成的数据库的文本。为了做到这一点,我使用了UPDATE命令对其进行了修改。然而,在执行之后,它会返回所有重音符号,并在元音后面加上问号,而且它没有正确显示。你能帮我解决这个问题吗?

提前感谢

结果的文本是这样的:un-nu?接种疫苗的人?马在洛杉矶的表现如何?第二天?cada

Mike

Microsoft SQL Server

要插入/更新这样的值,您应该通知SQL这是一个在其前面添加N的unicode字符串,如下所示:

UPDATE dbo.myTable SET col = N'Strange string - начала'

要使用varchar类型存储重音字母,请同时使用正确的排序规则(支持排序规则和unicode(。

ALTER TABLE dbo.myTable 
ALTER COLUMN [message] varchar(800) COLLATE Cyrillic_General_CI_AI;

我在多语言应用程序中遇到过类似的西里尔字母(俄语和乌克兰语(问题。

对我来说,解决方案是在需要的每个表、过程和函数中将数据类型从varchar更改为nvarchar

有关nchar和nvarchar(Transact-SQL(的详细信息

提示:由于我使用JSON,我希望升级到SQL Server 2019,Microsoft在那里为varchar类型实现了UTF-8编码。

最新更新