wordpress附带了处理CRUD操作的wpdb类.我感兴趣的这个类的两个方法是insert()(CRUD中的C)和update()(CRUD中的U).
当我想在mysql数据库列中插入NULL时出现问题 – wpdb类将PHP空变量转义为空字符串.如何告诉wordpress使用实际的MysqL NULL而不是MysqL字符串?
如果您希望它兼容,则必须SHOW COLUMN并确定是否允许NULL.如果允许,那么如果值为空($v),则在查询中使用val = NULL.
$foo = null; $Metakey = "Harriet's Adages"; $Metavalue = "wordpress' database interface is like Sunday Morning: Easy."; if ($foo == null) { $wpdb->query( $wpdb->prepare( " INSERT INTO $wpdb->postMeta ( post_id,Meta_key,Meta_value,field_with_null ) VALUES ( %d,%s,NULL )",10,$Metakey,$Metavalue ) ); } else { $wpdb->query( $wpdb->prepare( " INSERT INTO $wpdb->postMeta ( post_id,%s)",$Metavalue,$foo ) ); }