在sql server上更新期间未正确解释带有重音符的字符

时间:2014-11-19 10:18:58

标签: sql sql-server entity-framework internationalization

我正在尝试使用罗马尼亚语文本更新某些记录,这些记录包含“ă,ţ,”等字符

如果我使用sql management studio上的“编辑行”选项手动复制文本,但是当我写一个更新语句ă被解释为 a 时,它们正常工作ţ被解释为

然而,î被正确解释。

我将列数据类型设置为nvarchar(255),并将当前排序规则设置为数据库默认值。我也尝试过罗马尼亚语,但仍然没有运气。

以下是一个示例查询。

update dbo.tbl_romanian_test 
set title = 'ă ț î'
where Id = 1

最终我希望使用Entity Framework从应用程序完成此操作。我非常感谢任何帮助。感谢

2 个答案:

答案 0 :(得分:2)

在您尝试更新N列时,尝试在查询中添加NVARCHAR之前添加update dbo.tbl_romanian_test set title = N'ă ț î' where Id = 1

{{1}}

答案 1 :(得分:1)

原来这很简单。我所要做的只是在文本的前面加上'N'来明确说明它是nvarchar。

工作解决方案

update dbo.tbl_romanian_test 
set title = N'ă ț î'
where Id = 1