一个非常简单的例子就是对神秘人物的寻宝非常令人沮丧。
我有一个带有varchar(1) NOT NULL
列的表 - 一切都是默认的 -ANSI_PADDING
也是NULLS
用于ON
表的。我们将此列称为CodeNum
一个简单的查询是
SELECT *
FROM tableA
WHERE CodeNum = ' '
如果我对 DatabaseA 运行此查询,它会按预期返回列中有空白或“无”的所有行。
如果我对同一个表的 DatabaseB 运行相同的查询(使用比较脚本甚至工具来验证它们是否相同),它不会返回任何结果。
CHAR(1)
我尝试通过寻找隐藏的回车符和其他字符CHAR(255)
。仍然没有结果。
作为测试,我尝试''
使用一揽子更新语句将 DatabaseB 中的列设置为等于。
UPDATE tableA
SET CodeNum = ''
现在我的查询按预期返回结果。所以对我来说,这表明该列中有一些字符,但我真的很想弄清楚那个字符是什么,这样我就可以追踪它的起源。关于我还可能遗漏什么的任何想法?
尝试:
查看该字段中字符的 ascii 码。