我有一个带有传输 SQL Server 对象任务步骤的 SSIS 包,该步骤将表(架构和数据)从一个数据库传输到另一个数据库。源数据库和目标数据库具有不同的排序规则。(不知道是不是相关信息。)
在某些测试环境中,某些字符(匈牙利语重音字符:ő,ű)在传输过程中会转换为非重音字符 (o,u)。在其他测试环境中,一切都很好(匈牙利重音字符被很好地转移)。源表列是非 unicode (varchar),我们无法更改它,因为它是一个遗留系统。
实验表明,此行为取决于 Windows 区域设置(控制面板/区域和语言/管理/“非 Unicode 程序的语言”)。如果设置为匈牙利语,那么一切都很好,但如果设置为英语,那么匈牙利口音就会丢失。
问题是我无法强制执行特定的 Windows 语言环境设置,因此我正在寻找一种不依赖于 Windows 语言环境的方法来使其正确。
有没有办法告诉 SSIS 在传输中使用匈牙利代码页?