我的主要问题是如何将具有英语归类的整个数据库复制到具有希腊归类的数据库?源数据库包含所有表和相关数据。我有一个干净的希腊排序数据库。我想将所有内容从源复制到目标。
我在知识库文章中找到的一种解决方案包括以下步骤:
- 为源数据库中的所有对象(不包括索引、触发器、主键、外键、默认设置和约束)生成脚本。在这里,
Script collation
设置被设置为False
,所以脚本是在没有collate
关键字的情况下创建的。 - 在目标数据库上运行步骤 1 中的脚本以使用目标数据库排序规则创建对象。
- 使用 DTS 从源数据库传输数据。这就是我现在卡住的地方。
我使用Export Data...
SQL Server 2005 的向导将数据从源数据库导出到目标数据库。我的数据库中有大约 1500 个表,所以我Optimize of many tables
在向导步骤中勾选了复选框。除此之外,所有设置都是默认的。
执行导出时出现错误(包含报告的文本文件) 。
(来源:googlepages.com)
为了继续前进,要么我需要解决这个错误,要么需要一种新的方法来使用不同的排序规则从源数据库复制到目标数据库。
编辑 1
我忘了提到我已经尝试过使用 SQL 比较。很长时间以来,我一直在使用该工具。但在这种情况下它不会有一点帮助。我Latin1_General_CS_AS
在源数据库中有带有排序规则的表,但我不想使用该排序规则创建表。我知道有一个选项Ignore Collation
。但是,列名还有另一个问题——一些列名很奇怪,SQL Compare 在格式化列名时引入了额外的[
或]
字符,这会破坏整个同步脚本!