解决数据库查询连表视图查询,不同数据编码的问题。

      前段时间在开发内部系统的时候,需要使用另一个系统的数据,为了简便就直接在数据库后台做了一个视图。但是后面再开发中遇到了一个问题,由于两个数据的编码格式不同在连表查询的时候会遇到错误如:[SQL Server]无法解决 equal to 运算中 "Chinese_PRC_CI_AS" 和 "Chinese_PRC_CI_AI_WS" 之间的排序规则冲突。

  搞了很久尝试修改查询,在查询的时候修改编码格式等等,最后还是在我们公司数据库大佬的帮助下 得到了一个很好的解决方案。

   1.先删除掉以前的视图。drop view V_*****;

   2:重新新建一个视图,并且在视图中新建一个字段该字段是需要连表查询的字段的拷贝,字段的数据格式和当前数据的数据格式一样。如

CREATE VIEW [V_****] AS
select (Code COLLATE Chinese_PRC_CI_AS) AS Code1,* from datebase.table 

   在查询时,原先需要 v_****表中 中 code 的字段 替换成code1 即可。

posted @ 2019-10-21 10:17  回忆漫长  阅读(557)  评论(0编辑  收藏  举报