如何在MS Access SQL中识别并替换NBSP(U+A0)字符
在MS Access SQL中识别并替换U+A0(NBSP)字符
你提到的SELECT Replace([number], char(U+A0), "") AS ReplaceString;写法在MS Access里行不通,因为Access的Chr()函数只接受十进制的ASCII/Unicode编码值,不支持U+A0这种格式的写法。
U+A0对应的十进制编码是160,所以正确的写法应该用Chr(160)来代表这个非断空格(NBSP)字符:
SELECT Replace([number], Chr(160), "") AS ReplaceString;
如果需要批量更新表中的数据,把字段里的NBSP替换为空,可以用UPDATE语句:
UPDATE 你的表名 SET [number] = Replace([number], Chr(160), "");
另外,如果你不确定目标字符是不是U+A0,可以用Asc()函数查看它的十进制编码,比如:
SELECT Asc(Mid([number], 1, 1)) AS CharCode FROM 你的表名;
如果返回结果是160,就确认是这个NBSP字符了。
内容的提问来源于stack exchange,提问作者mjanach
相关产品推荐
相关产品推荐

