日期:2014-05-18  浏览次数:20704 次

还是排序规则问题,期待老大再次出现
问题:
两个不同的库   A库的排序规则是SQL_Latin1_General_CP1_CI_AS
B   库的排序规则是   Chinese_PRC_CI_AS

现在A   库有一部分表的数据需要同步到   B来,
由于排序规则不一样,A   库中包含中文的数据(类型:varchar,char)   同步到B库中时出现乱码,两个库的排序规则都不能改动,数据类型不改为:NVARCHAR
有没有好的办法让A库到B库包含中文的数据不乱码

详见
http://community.csdn.net/Expert/topic/5320/5320198.xml?temp=.9379846

使用过的方法:
1:   用bcp   导出   不行,   用-N   参数也不行
2:在查询分析器中直接用   select   cast(cloname   as   nvarchar(100))   from   tablename     也乱码.
3:从客户拿过来的数据库备份恢复也乱码(环境基本一致)


请大家帮忙,有没有好的办法,在线等

------解决方案--------------------
直接DTS,複製數據庫可以嗎?
------解决方案--------------------
http://topic.csdn.net/t/20031031/15/2414796.html

看看查询乱不乱码?
------解决方案--------------------
建一个临时库就可以了
------解决方案--------------------
直接用查询分析器查不乱码
--------------------------------
这种, 我用导入/导出, 方式为 "在两个sql server数据库之间复制对象和数据 ", 选项设置中包含 "应用排序规则 "
在我的电脑上测试是可以正确地导入的.
------解决方案--------------------
1)新建C库
2)右键-》所有任务-》生成SQL脚本,生成所有表的脚本temp.sql
3) 在temp.sql利用查找/替换功能将“varchar”替换成“nvarchar”,“char”替换成“nchar”
4) 在C库运行temp.sql生成结构
5) 用DTS将A库数据导至C库,注意把“创建目的对象”勾去掉
6) 用DTS将C库数据导至B 库
7)删除C库
8)OK
------解决方案--------------------
楼主打包一个表给大家测试吧.
------解决方案--------------------
不懂帮顶
------解决方案--------------------
学习
------解决方案--------------------
你可以试用 Dumper。
下载地址: http://www.51dbsync.com/download/Dumper1.2.rar

可以解决 collation 问题的。
------解决方案--------------------
楼主有试过我上面说的方法么?
我试了可以的
------解决方案--------------------
库备份一下, 恢复成另外一个名字.
把无关的表删除, 保留一下可以给大家测试用的. 然后再备份, 压缩, 放到网上. 告诉大家地址.

操作的时候小心, 别把原始库给破坏了.
------解决方案--------------------

楼主有试过我上面说的方法么?
我试了可以的

========================
如果原来定义的varchar(6000),那转成了nvarchar(6000)是行不通的
------解决方案--------------------
不懂帮顶