我有一条更新 SQL 语句来更新一行
UPDATE COM_TRANSACTION_LOGS
SET END_TIME = ?,
RESPONSE = ?
WHERE
TRANSACTION_ID = ?
AND
MESSAGE_ID = ?
这里的问题是MESSAGE_ID
在某些情况下可以为空,因此更新 SQL 为
[DEBUG] {pstm-100101} Parameters:[2013-05-14 10:38:01.485, XML, 123XYZAAA1236511, null]
这无法更新,因为 where 子句变得像
WHERE
TRANSACTION_ID = '123XYZAAA1236511'
AND
MESSAGE_ID = null
如何通过准备好的语句与空值进行比较。
我知道这个用于空比较的 where 子句必须是这样的
WHERE
TRANSACTION_ID = '123XYZAAA1236511'
AND
MESSAGE_ID is null
如何告诉我准备好的语句将 where 子句设置为is null
不使用两个查询并在null
或的情况下有条件地使用它们='somevalue