当前位置: 代码迷 >> Sql Server >> 关于跨库更新update,该怎么处理
  详细解决方案

关于跨库更新update,该怎么处理

热度:12   发布时间:2016-04-27 12:58:33.0
关于跨库更新update
GH 是另外一个数据库,BBS是他下边的表

select * from GH..BBS 这个查询可以正常执行

update a set a.deptID=b.ks_id from GH..BBS b,users a where a.loginName=b.id



服务器: 消息 446,级别 16,状态 9,行 1
无法解决 equal to 操作的排序规则冲突。




------解决方案--------------------
查查这个错误提示
------解决方案--------------------
探讨
GH 是另外一个数据库,BBS是他下边的表

select * from GH..BBS 这个查询可以正常执行

update a set a.deptID=b.ks_id from GH..BBS b,users a where a.loginName=b.id



服务器: 消息 446,级别 16,状态 9,行 1
无法解决 equal to 操作的排序规则冲突。
……

------解决方案--------------------

--users.loginName同GH..BBS.id


这两列的排列不一致,你生成表结构查看一下

然后指定一个相同的排序就行了

a.loginName=b.id COLLATE 排序(loginName列的)
------解决方案--------------------
users.loginName同GH..BBS.id


从字面意思,我想是不是 两个表的数据类型不一样 造成的。是不是一个是 VARCHAR一个是INT
  相关解决方案