还是排序规则问题,期待老大再次出现
问题:
两个不同的库 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)是行不通的
------解决方案--------------------不懂帮顶