我正在尝试使用ODBC绑定批量删除行。我正在做的是:将所有列与值数组绑定,然后执行语句。
假设我有一个查询:T
,然后将值Delete From Table Where primary_key=? and second_primary_key=?
绑定到第一列,然后将(1, 2, 3, 4)
绑定到第二列。
这很好用,直到我偶然发现具有可为空值的列。对于那些,如果任何行包含空值,我绑定(4, 3, 2, 1)
。我猜它不起作用,因为SQL_NULL_DATA
总是返回true。
我的问题是: 是否可以强制ODBC将这种情况解释为:primary_key =?或primary_key为空?还是我必须搜索所有值并手动附加sql查询?