如何在参数化查询中使用IS NULL(Delphi)

use*_*275 5 delphi parameters isnull

我得到这样的陈述:

SELECT * From Table WHERE Feld IS NULL
SELECT * From Table WHERE Feld IS NOT NULL
Run Code Online (Sandbox Code Playgroud)

现在我想知道如何参数化这个查询:

SELECT * From Table WHERE Feld IS :Value
Run Code Online (Sandbox Code Playgroud)

因为我不能将"NOT NULL"传递给参数,我认为这根本不可能 - 但也许有人知道解决方案吗?谢谢!

Ond*_*lle 6

你可以尝试这样的东西(用Firebird 2.5测试):

SELECT * FROM TABLE WHERE (IIF(FIELD IS NULL, 'Y', 'N') = :IS_NULL)
Run Code Online (Sandbox Code Playgroud)

然后传递'Y''N'IS_NULL参数.

根据您使用的数据库,您可能需要替换IIFCASE类似的构造.