将SQL Server数据库克隆到另一个排序规则

时间:2016-02-29 10:23:15

标签: sql sql-server ssms

我不确定这是否是将数据迁移到其他排序规则的最佳方式,但我已完成以下操作:

1)编写源数据库脚本并将脚本中的排序规则更改为我需要的

2)运行脚本并使用想要的排序规则创建新数据库(以及所有表,触发器,索引等。

3)我试图导出数据'从SQL Server管理工作室,但我收到了与代码页差异相关的错误。

4)由于导出/导入数据不起作用,我使用bcp将源数据库中的所有表格大量导出为txt文件。之后我开始使用bcp导入行,但是我看到了一些与截断和无效字符有关的错误。

使用不同代码页从数据库迁移数据的最佳/正确方法是什么?从脚本化源创建克隆后的整理?

1 个答案:

答案 0 :(得分:0)

我曾经不得不改变整个数据库的整理......不容易......

以下是这些步骤:

  • 复制了数据库
  • 删除了除裸表之外的所有内容(索引,视图,函数,过程,约束,触发器......)
  • 半自动更改了文字列的排序规则( - > INFORMATION_SCHEMA.TABLESINFORMATION_SCHEMA.COLUMNS很适合开始)
  • 使用工具(红门?)与副本进行比较并找出所有差异。
  • 这个工具创建了一个差异脚本 - 这很重要! - 可以配置为创建此脚本而不使用归类提示。
  • 最后我应用了diff脚本(一些手动工作......)

反过来开始使用创建脚本可能更容易,只有你的表没有整理提示,并对此进行其他操作......但是我的方法可以让数据保持不变。

祝你好运!