gpt4 book ai didi

mysql - 用通配符更新表?

转载 作者:行者123 更新时间:2023-11-30 21:35:19 25 4
gpt4 key购买 nike

我们在 +200 个 wordpress 站点上使用 IP 登录。由于我们最近搬家,我们需要更改 IP 地址。我在 ManageWP 中使用了这个代码片段

<?php

global $wpdb;

$wpdb->query(
"UPDATE wp_UNIQUE_PREFIX_ip_based_login
SET start='X', end='Y'"
);


?>

但我刚刚发现所有的 WP 安装都有一个唯一的前缀。所以我试图将上面的 SQL 命令与带通配符的选择结合起来。我正在尝试查找以“ip_based_login”结尾的所有表,并使用新的 IP 地址设置开始和结束列。这是我到目前为止所得到的。

SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.tables
WHERE TABLE_NAME LIKE '%_ip_based_login'
SET start='X', end='Y'

我收到此错误查询错误 (1064):第 4 行 'SET start='x', end='y'' 附近的语法错误

编辑:感谢 RiggsFolly,我使​​用 $wpdb->prefix 连接到表的末尾。所以我最终得到了

<?php

global $wpdb;

$table_name = $wpdb->prefix . "ip_based_login";

$wpdb->query(
"UPDATE $table_name
SET start='X', end='Y'"
);


?>

这不是我最初问题的解决方案,但它解决了我的问题。

最佳答案

你需要两个步骤:

找到 WP 表

SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.tables
WHERE TABLE_NAME LIKE '%_ip_based_login';

遍历你的结果并更新

UPDATE <tablename>
SET start = 'X', end = 'Y';

关于mysql - 用通配符更新表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54179021/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com