我正在使用phpMyAdmin向WordPress数据库中的现有用户添加一些新的用户记录。该数据库用于WordPress多站点网络。
我不得不将旧的WP站点迁移到新站点,但旧站点是一个单一的WP数据库结构,新的WP multisite为每个用户提供了三条新记录。
我的问题是,如何使用WP multisite的这三个新用户记录更新/插入数千个现有用户记录?
以下是wp_usermeta
表格:
(225579, 7520, \'locale\', \'\'),
(225583, 7520, \'primary_blog\', \'3\'),
(225584, 7520, \'source_domain\', \'example.com\'),
如果不添加这些记录,每个博客都无法看到自己的客户。在WP multisite中,所有用户和用户元都合并到一个表中。
首先,我的旧客户记录可以在wp\\u usermeta表中找到,如下所示:
(225571, 7520, \'first_name\', \'John\'),
(225572, 7520, \'last_name\', \'Doe\'),
现在我需要将上述3条记录添加到每个现有记录中
user_id
. 正如您在我的示例中所看到的
user_id
对于所有5条记录都是相同的。请记住,我正在使用来自新用户的数据来突出显示我需要什么。我必须将3条新记录添加到每个现有记录中
user_id
从无到有。
我尝试了几件事,但都没有成功:
INSERT INTO wp_usermeta SELECT DISTINCT meta_key FROM wp_usermeta VALUES (\'source_domain\', \'example.com\');
INSERT INTO wp_usermeta (umeta_id, user_id, meta_key, meta_value) VALUES (\'primary_blog\', \'3\');
INSERT INTO wp_usermeta (umeta_id, user_id, meta_key, meta_value) SELECT DISTINCT umeta_id, user_id, \'source_domain\', \'example.com\';
INSERT INTO wp_usermeta (meta_key, meta_value) SELECT \'souce_domain\', \'example.com\';
INSERT INTO wp_usermeta (umeta_id, user_id, meta_key, meta_value) SELECT umeta_id, user_id, \'source_domain\', \'example.com\' WHERE user_id >= \'51\'
INSERT INTO wp_usermeta (umeta_id, user_id, meta_key, meta_value) SELECT DISTINCT (umeta_id, user_id, \'source_domain\', \'example.com\') WHERE user_id = user_id
INSERT INTO wp_usermeta VALUES (umeta_id, user_id>=\'51\', meta_key=\'source_domain\', meta_value=\'example.com\') ON DUPLICATE KEY UPDATE user_id;
表和列名:
Table = wp_usermeta
Columns = umeta_id, user_id, meta_key, meta_value