列值中可能的编码问题

问题描述 投票:0回答:1

我每天运行满负荷以填充数据库中的表。我发现使用

insert into targettable
select * from sourcetable

将一些可能会在源表中以错误编码输入的值存储在目标表中。例如,一个值如下所示:

ΞΏΞΉΞΊΞΏΞ½ΞΏΞΌΞΏΟΞΉΟΞ±Ξ½Ξ½Ξ·Ο

但是当我执行时:

select * from targettable where name = 'ΞΏΞΉΞΊΞΏΞ½ΞΏΞΌΞΏΟΞΉΟΞ±Ξ½Ξ½Ξ·Ο'

它不返回任何行。

数据库,表和列的排序规则设置为Greek_CI_AI

是否可以在目标表中找到并修复这些值?如果没有,我将如何确保这些值不会插入到我的目标表中。 (可以使用sql语句或SSIS任务)

sql sql-server sql-server-2008-r2
1个回答
0
投票

我认为这将为您返回想要的结果:

select * from targettable 
where first_c = CAST( 'ΞΏΞΉΞΊΞΏΞ½ΞΏΞΌΞΏΟΞΉΟΞ±Ξ½Ξ½Ξ·Ο' AS BINARY)
© www.soinside.com 2019 - 2024. All rights reserved.