不同CodePage数据库之间的数据导入导出

bhtfg538 2009-10-17 04:19:27
环境:
服务器 A 中文Win 2003 操作系统, 默认是中文MSSQL(中文GBK字符集),排序Chinese_.....

服务器 B 英文Win 2008 ,默认是 英文的MSSQL(Latin字符集)

他们之间导入导出老是出问题...

我尝试 A直接 导出到 csv 文件 , 然后 附加的时候 发现 B 中,即使我修改字段类型为NCHAR (WT_WSTR) 也导出失败,说要丢失字符

我尝试 A 导出时候选择 英文(美国)的codePage,直接导出失败

我尝试 A 导出时候选择 美国区域,字符集为 中文OEM ,预览的时候,中文全部变成数字了...


...全文
109 点赞 收藏 14
写回复
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
banditi225 2009-10-18
[Quote=引用 10 楼 bhtfg538 的回复:]
我 想到一个 很淫荡的 方法

我先备份 ,然后 用 移动硬盘 靠过去,然后打D 过去,然后还原,到后 写查询强制搞.

搞不定就砸机器了...
[/Quote]
哈哈 nb行为
回复
navy887 2009-10-18
[Quote=引用 10 楼 bhtfg538 的回复:]
我 想到一个 很淫荡的 方法

我先备份 ,然后 用 移动硬盘 靠过去,然后打D 过去,然后还原,到后 写查询强制搞.

搞不定就砸机器了...
[/Quote]
牛。。呵呵。。
回复
navy887 2009-10-18
导出文本,然后再导入另外台。这样试试看,应该没问题的。
回复
--小F-- 2009-10-17
[Quote=引用 10 楼 bhtfg538 的回复:]
我 想到一个 很淫荡的 方法

我先备份 ,然后 用 移动硬盘 靠过去,然后打D 过去,然后还原,到后 写查询强制搞.

搞不定就砸机器了...
[/Quote]

哈哈
回复
bhtfg538 2009-10-17
我 想到一个 很淫荡的 方法

我先备份 ,然后 用 移动硬盘 靠过去,然后打D 过去,然后还原,到后 写查询强制搞.

搞不定就砸机器了...
回复
dawugui 2009-10-17
如果你的操作系统不同,好象还涉及到语言问题了?排序规则也不同,那就真的很难很难办了.友情帮顶.
回复
--小F-- 2009-10-17
[Quote=引用 7 楼 bhtfg538 的回复:]
引用 6 楼 fredrickhu 的回复:
备份数据库--------还原数据库


仿佛没有其他更好的办法了


555555555555,问题 他们只要里面的 一 两张 表.唉~
[/Quote]

因为你的排序规则不一样啊 真的不好办 也许导出为ACCESS 再导入试下 不过多半也是不行的
回复
bhtfg538 2009-10-17
[Quote=引用 6 楼 fredrickhu 的回复:]
备份数据库--------还原数据库


仿佛没有其他更好的办法了
[/Quote]

555555555555,问题 他们只要里面的 一 两张 表.唉~
回复
--小F-- 2009-10-17
备份数据库--------还原数据库


仿佛没有其他更好的办法了
回复
zoevsjay 2009-10-17
导出EXECL 看看数据的值 有些数据需要在EXECL里面是错误数字或错误字符 在导入的时候才能 显示
不知道是不是这样 我遇到过互相无法导入 那是就是值找不到! 给你参看下
回复
bhtfg538 2009-10-17
[Quote=引用 2 楼 dawugui 的回复:]
插入数据时使用:

insert into tb () values(N'...', N'...')
[/Quote]

不同的 域,一个外网,一个内网,不能直接使用SQL ,VPN 都不好连接...
回复
bhtfg538 2009-10-17
[Quote=引用楼主 bhtfg538 的回复:]
环境:
服务器 A  中文Win 2003 操作系统, 默认是中文MSSQL(中文GBK字符集),排序Chinese_.....

服务器 B 英文Win 2008 ,默认是 英文的MSSQL(Latin字符集)

他们之间导入导出老是出问题...

我尝试  A直接 导出到 csv 文件 , 然后 附加的时候 发现 B 中,即使我修改字段类型为NCHAR (WT_WSTR) 也导出失败,说要丢失字符

我尝试 A 导出时候选择 英文(美国)的codePage,直接导出失败

我尝试 A 导出时候选择  美国区域,字符集为 中文OEM ,预览的时候,中文全部变成数字了...



[/Quote]

我都是 Unicode 类型的.
回复
dawugui 2009-10-17
插入数据时使用:

insert into tb () values(N'...', N'...')
回复
dawugui 2009-10-17
你的这些字符串的字段,最好都使用nvarchr类型.
回复
发动态
发帖子
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
社区公告
暂无公告