Visual Studio数据库项目 - 使用德语字母发布部署脚本问题

时间:2014-04-25 07:37:00

标签: visual-studio database-project

我们在VS2013中创建了一个数据库项目。我们添加了数据库结构它可以很好地发布和比较数据库。

现在,在发布时,我们希望自动加载几个包含默认数据的表,例如包含德语字母;

insert into @ReportGruppe1 values(507,'ID_507','Flüssigkeitsbilanz (24 Stunden)','CC_1_LeerVordrucke_A4_Hoch.lst', 'AP;PP', 1,  10, 1)

会发生什么; ü和其他德语字母被一些奇怪的字符替换为“?”在部署后脚本运行时,在黑色方块中。

当我直接在SQL Server Management Studio中运行相同的脚本时,一切都运行良好,因此它必须是项目的一些问题。有任何想法吗?如何处理这种情况?

1 个答案:

答案 0 :(得分:1)

如果您可以通过mgmt控制台插入这些字符,那么列可能属于nvarchar类型。

要通过脚本插入数据,您需要通过在N前面添加前缀来标记字符串输入值als unicode:

N'Flüssigkeitsbilanz (24 Stunden)'

您的示例插入语句应如下所示:

insert into @ReportGruppe1 values(507,'ID_507', N'Flüssigkeitsbilanz (24 Stunden)', N'CC_1_LeerVordrucke_A4_Hoch.lst', 'AP;PP', 1,  10, 1)

检查列的数据类型,并为那些接受nvarchar(或nchar和其他unicode类型)的人处理输入。