This Domain(Admin5.com) is for Sale:

数据变换和转换注意事项(SQL)

时间:2007-11-09  来源:不详  作者:迈克DB

对象任务的情况,和使用复制列转换在不同排序规则或代码页之间复制数据的情况。

复制 SQL Server 对象任务
下面论述复制 SQL Server 对象任务如何处理非 Unicode 数据:

在 SQL Server 2000 实例间复制数据时,只要设置复制 SQL Server 对象任务的 UseCollation 属性,便不会发生数据丢
失。


将数据从 SQL Server 2000 实例复制到 SQL Server 7.0 时,对于具有与数据库默认排序规则代码页相匹配的排序规则的
列,使用最佳匹配映射。而具有不同代码页的列中所存储的数据,则被解释为正在用默认代码页进行编码处理,转换过程
中将伴随数据丢失。


将数据从 SQL Server 7.0 复制到SQL Server 2000 实例时,由于 SQL Server 7.0 无法确定其默认代码页所映射的排序
规则,UseCollation 属性不可用。执行复制 SQL Server 对象任务期间不支持任何排序规则,因此,将给非 Unicode 目
的列指派目的数据库的默认排序规则。如果与此排序规则相关联的代码页与源数据库的代码页不匹配,DTS 将执行最佳匹
配映射。


将数据从 SQL Server 7.0 复制到 SQL Server 7.0 时,如果源数据库和目的数据库使用不同的默认代码页,DTS 将执行
最佳匹配映射。
织梦好,好织梦

若要确保复制非 Unicode 时不发生数据丢失,可使用 SQL Server 大容量复制功能以 Unicode 格式导出数据,然后使用
大容量复制或 DTS 导入数据。

若要禁用默认排序规则脚本,请添加代码或使用脱接编辑或动态属性任务将 SQLDMOScript2_70Only 的值添加到复制 SQL
Server 对象任务的 ScriptOptionEx 属性中。

复制列转换
下面论述复制列转换如何在不同代码页之间处理非 Unicode 数据:

如果源列为 Unicode 而目的列为非 Unicode,则执行最佳匹配映射,并尝试在源列和目的列之间转换数据。


如果源列为非 Unicode 而目的列为 Unicode,则不论实际使用的代码页是什么,DTS 都将源列视为属于代码页 1252。


如果源列和目的列都为非 Unicode,原始数据不经转换即被复制,将发生部分数据丢失。

看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息