0

所以,我的问题在于 Descriptcheck 变量,因为我通过 Excel VBA 将数据传递到 Access 数据库,每个描述都是唯一的,但唯一的问题是如果我有一个空行,如何修改下面的代码以使其包含 IS NULL这样它看起来就像显示的第二个代码片段。

  1. sCmndString = "SELECT * FROM " & tablename & " WHERE Description =" & _
                  " & Chr$(34) & Descripcheck & Chr$(34) & ";"
    

    2.

     sCmndString = "SELECT * FROM " & tablename & " WHERE Description IS NULL;
    

我想我必须对 if 语句进行一些修改。我只是想知道是否有一种非常快速的方法。现在出于扩展目的,假设我现在将描述作为数字而不是字符串,我是否会以同样的方式处理它,当然 Car$(34) 不会在代码行中。

4

1 回答 1

0

您可以在 SQL 本身中执行条件:

sCmndString = "SELECT * FROM " & tablename & " WHERE Description =""" & _
              Descripcheck & """ OR Description IS NULL;"

至于它是一个“数字”,您必须了解“描述”在任何表中都有一个类型......如果类型是字符串,那么 Descriptcheck 是否为“5”并不重要,它仍然是一个字符串,因此在比较中总是需要引号。

于 2013-11-07T21:27:23.783 回答