WordPress删除带有字符串的MySQL行

时间:2017-10-08 作者:Paul C.

因此,我正在更新一个旧wordpress插件(从未发布)的代码,我希望在导入新数据之前数据库保持“干净”,否则数据只会累积起来,我希望在每次导入之前都保持干净,这样就不会发生重复。

这是我正在使用的代码,但似乎不起作用。

global $wpdb;
$wpdb->delete( $wpdb->postmeta WHERE meta_key LIKE \'_cb_%\' ) );
$wpdb->delete( $wpdb->posts WHERE post_type LIKE \'webcam\' ) );
这幅画怎么了?

提前谢谢。

1 个回复
最合适的回答,由SO网友:janh 整理而成

看看the documentation, $wpdb->delete()至少接受两个参数,表名和Where条件作为数组()。删除imho不支持LIKE,因此需要使用->query

global $wpdb;
$wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_key LIKE \'_cb_%\'" );
$wpdb->query( "DELETE FROM $wpdb->posts WHERE post_type LIKE \'webcam\'" );
我想双右括号和缺少的引号只是复制粘贴的结果?

结束

相关推荐

如何准备将字符串作为值插入到MySQL表中?

我试图将一些包含连字符和撇号的字符串作为值插入MySQL表中。我指定字符串值:$venue_name = addslashes(get_the_title($id)); 当我回显该值时,我得到:4B’s Brewery 以及Ace Hardware - Bailey 我的SQL语句如下所示: INSERT INTO wp_w2bw2c_venue (id, market_id, venue_status, venue_name, website, addres