【发布时间】:2011-06-22 16:41:00
【问题描述】:
有谁知道是否可以使用 MYSQLI bind_param 将 NULL 插入列中。
我有一种情况,有时我想在bind_param 中将一列设置为空。
就这样……
$column2 = "NULL";
$insert_data->bind_param('ss', $column1,$column2);
显然,这只是将 NULL 作为字符串写入列。
我试过 null 和 \0 但它们不起作用。
我想知道是否有一些值可以让$column2 相等,这将导致它提交实际的空值。
否则,我将不得不动态构建类型和参数列表并使用call_user_func_array 来创建我的绑定,这样如果它们为空,则不会写入列。我可以这样做,但它会导致大量繁琐的额外代码,所以我只是想知道是否可以避免这种情况。
【问题讨论】:
-
设置
$column2 = null;应该可以工作。 “不工作”是什么意思? -
确实有效。愚蠢的是,我把 null 放在引号之间,所以它被解释为实际的字符串“null”。盯着它看了很久,没有看到报价。谢谢。如果有一个脸红的微笑图标,我现在就用它。
标签: php mysqli null prepared-statement bindparam