(collation)字符集排序規則不一樣時,怎么進行相等比較啊?

---涛声依旧--- 2007-01-19 11:13:57
如:我要找出A表與B表中同一個人其email不一樣的記錄時報錯
select a.email,b.email from A表 a inner join B表 b on a.emp_no=b.empno
where a.email<>b.email

訊息 468,層級 16,狀態 9,行 1
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Chinese_Taiwan_Stroke_CI_AS" in the not equal to operation.

經查,報錯原因為:
A表字段email的collation是:Chinese_Taiwan_Stroke_CI_AS
A表字段email的collation是:SQL_Latin1_General_CP1_CI_AS
如何解決啊?

重新建表統一collation,就可以了。除此方法外,還有其他方法嗎?
B表是從其他數據庫導過來的,兩個數據庫排序原則不一樣。
所以不同數據庫創建時排序原則最好一樣,要不就出現上述等很多問題了。
...全文
2169 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
---涛声依旧--- 2007-01-19
  • 打赏
  • 举报
回复
問題解決,謝謝!
select a.email,b.email from A表 a inner join B表 b on a.emp_no=b.empno
where a.email collate Chinese_Taiwan_Stroke_CI_AS = b.email collate Chinese_Taiwan_Stroke_CI_AS

結貼了。
caixia615 2007-01-19
  • 打赏
  • 举报
回复
collate Chinese_PRC_CI_AS
加上这一句试试

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧