最近感受到了第三方供应商数据库迁移的失败(蹩脚的遗留代码库),其中排序规则从不区分大小写转换为区分大小写。我想知道在迁移过程中是否故意更改了排序规则?我原以为在任何数据库迁移中,排序规则都将保持不变(即与源数据库排序规则保持相同)。托管数据库的服务器是否会自动覆盖排序规则?
最近感受到了第三方供应商数据库迁移的失败(蹩脚的遗留代码库),其中排序规则从不区分大小写转换为区分大小写。我想知道在迁移过程中是否故意更改了排序规则?我原以为在任何数据库迁移中,排序规则都将保持不变(即与源数据库排序规则保持相同)。托管数据库的服务器是否会自动覆盖排序规则?
问题中缺少很多信息,例如:
一般来说,没有明显/默认的答案,因为没有用于迁移数据的单一机制/方法,在这种情况下也没有对“云”的单一定义。我希望某些选项(例如从.bak备份文件恢复)将保持数据库的默认排序规则不变,但这并不意味着与实例级排序规则有关。
这归结为:即使没有更详细的信息可以继续,由于在某些级别(实例和/或数据库)存在排序规则差异,执行迁移的供应商似乎没有仔细确保a)如果可以选择设置新的排序规则,则使用完全相同的排序规则,或者 b) 如果没有选择,您会收到通知,特定级别的排序规则将发生变化,并且它是将与当前的排序规则不同。
我肯定会就此问题联系供应商。通常,如果有一个不能更改的默认 Collation,它只是 Instance-level,并且区分大小写:
SQL_Latin1_General_CP1_CI_AS
不幸的是)Latin1_General_100_CI_AS_WS_KS_SC
SQL_Latin1_General_CP1_CI_AS
不幸的是)参考: