2

我将 XML 文件导入到表中。然后我尝试查询不为空的字段。我有一个字段似乎为空白或 null 但仍在查询中返回。

我不确定这是否是换行符,但在网上搜索时,这就是他们所说的“回车”

导入的 XML 部分如下所示:

<Myfield>
</Myfield>

我试图查询它没有被拉到ff中:

Where Myfield <> null

Where Myfield <> ""

我尝试使用 ASC() 函数选择它并返回 13 但是当尝试通过下面的代码过滤它时,我收到“无效的过程调用”错误

SELECT * FROM Table1 where asc(Myfield) = '13'
4

2 回答 2

4

也许您看到的实际上是CRLF,一个回车符(ASCII 13)加上换行符(ASCII 10),实际上是 2 个字符。应该很容易检查...

SELECT * FROM Table1 WHERE Myfield = Chr(13) & Chr(10)

万一导入的 XML 引入了任何空格或其他非打印字符,您可以在字段中的任何位置检查 CRLF。

SELECT * FROM Table1 WHERE Myfield ALike '%' & Chr(13) & Chr(10) '%'

ALike不同之处Like在于它向 db 引擎发出信号以期望 ANSI 通配符,%并且_,而不是 Access'*?

于 2013-08-02T14:12:19.113 回答
0
SELECT * FROM Table1 where Myfield = Chr(13)

我可能还会寻找有限数量的字符

SELECT * FROM Table1 WHERE Myfield = Chr(13) OR Len(Myfield) < 2    ' or < 3
于 2013-08-02T12:49:10.827 回答