社区
MS-SQL Server
帖子详情
排序规则问题 SQL_Latin1_General_CP1_CI_AI <-> Chinese_PRC_CI_AS
yuanmu
2005-12-07 12:10:43
a 库用 Chinese_PRC_CI_AS ,b 库用 SQL_Latin1_General_CP1_CI_AI
要将 b 库的一个表中的数据(含中文)定时同步到 a 库的一个表中。
但 a 库中得到的数据显示出来是乱码。
请帮忙解决一下。(不改变 a ,b 库的排序规则)
thanks
...全文
358
11
打赏
收藏
排序规则问题 SQL_Latin1_General_CP1_CI_AI <-> Chinese_PRC_CI_AS
a 库用 Chinese_PRC_CI_AS ,b 库用 SQL_Latin1_General_CP1_CI_AI 要将 b 库的一个表中的数据(含中文)定时同步到 a 库的一个表中。 但 a 库中得到的数据显示出来是乱码。 请帮忙解决一下。(不改变 a ,b 库的排序规则) thanks
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
superunusa
2005-12-08
打赏
举报
回复
我认为应该是数据类型的错误,可能就是UNICODE和非UNICODE的问题。
yesyesyes
2005-12-08
打赏
举报
回复
将数据储存为unocode类型,就不要转了
yuanmu
2005-12-08
打赏
举报
回复
insert into a.dbo.mytable from [127.0.0.1].b.dbo.mytable
yuanmu
2005-12-08
打赏
举报
回复
done
我模拟了实现了
在查询分析器中不选中
工具 -> 选项 -> 连接 -> 执行字符数据的转换
有好几个方法
1 opendatasource 一类openXXX
2 链接服务器
3 本地包导数据
最终选择用链接服务器,自己链接自己。通过链接后检索出来的数据就是已经转码的了。
感谢各位
pbsql
2005-12-07
打赏
举报
回复
怀疑是不是两表的数据类型不对,采用nchar/nvarchar/ntext
samfeng_2003
2005-12-07
打赏
举报
回复
两个库都采用Chinese_PRC_CI_AS
对于,b 库用
select * from 表 order by 列 collate SQL_Latin1_General_CP1_CI_AI
来查询排序
yuanmu
2005-12-07
打赏
举报
回复
在查询分析器中,选中 工具 -> 选项 -> 连接 -> 执行字符数据的转换
出来是乱码,但
select theName collate Georgian_Modern_sort_CI_AS from b.dbo.mytable
显示的结果是正确的,不过插到 a.dbo.mytable 中还是错误的。
说白了,就是将 ISO-8859-1 编码的字符串转成 gb2312 ,用SQL实现。
yuanmu
2005-12-07
打赏
举报
回复
thanks 各位。
具体的情况是:
在查询分析器中,
use b
select * from b.dbo.mytable
如果在
工具 -> 选项 -> 连接 -> 执行字符数据的转换
选中它,结果就是乱码;不选,结果就能显示正确的中文。
至于把表 b.dbo.mytable 的数据插入到 a.dbo.mytable
用 insert into a.dbo.mytable select * collate Chinese_PRC_CI_AS from b.dbo.mytable 不起作用。
yesyesyes
2005-12-07
打赏
举报
回复
就是pbsql(风云)说的,与排序无关
yangyangxie
2005-12-07
打赏
举报
回复
insert into a select * Chinese_PRC_CI_AS from b
gwg2368
2005-12-07
打赏
举报
回复
是不是 数据类型不对哦
何更改
sql
2005数据库的编码方式
何更改
sql
2005数据库的编码方式;
SQL
查询区别大小写
在
SQL
Server查询语句时,对于查询参数的大小写区分
MS
SQL
数据库
排序
规则
如何更改
更改
SQL
Server 2005 实例的默认
排序
规则
的操作可能会比较复杂,本文将提供详细的操作步骤,需要了解的朋友可以参考下
MS
SQL
中“
SQL
_
Latin1
_
General
_
CP1
_
CI
_AS“ 和 “
Chi
nes
e_
PRC
_
CI
_AS“ 之间的
排序
规则
冲突
SQL
查询时候出现:无法解决 equal to 操作中 "
SQL
_
Latin1
_
General
_
CP1
_
CI
_AS" 和 "
Chi
nes
e_
PRC
_
CI
_AS" 之间的
排序
规则
冲突
问题
,可以用显示转换的方法解决 COLLATE
SQL
_collation_name
SQL
_collation_name 为
SQL
SERVE
排序
规则
名称 1、多表连接中修改
排序
规则
方法 SELECT*FROMA JOINBONA.NameCOLLATE
Chi
nes
e_
PRC
_
CI
_AS=...
解决MS
SQL
无法解决 equal to 操作中 “
SQL
_
Latin1
_
General
_
CP1
_
CI
_AS“ 和 “
Chi
nes
e_
PRC
_
CI
_AS“ 之间的
排序
规则
冲突
问题
出现 无法解决 equal to 操作中 "
SQL
_
Latin1
_
General
_
CP1
_
CI
_AS" 和 "
Chi
nes
e_
PRC
_
CI
_AS" 之间的
排序
规则
冲突
问题
可以用显示转换的方法解决 COLLATE
SQL
_collation_name
SQL
_collation_name 为
SQL
SERVE
排序
规则
名称 实例: 1、表连接使用方法 SELEC
MS-SQL Server
34,873
社区成员
254,640
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章