用于批量/一次性设置所有Wordpress用户昵称的SQL命令
我使用导入服务将用户从OpenCart平台导入WordPress安装。不幸的是,当这种情况发生时,所有导入的用户最终都使用了与“用户名”相同的“昵称”。因为wordpress不允许昵称与用户名相同,所以当用户尝试更新密码时,他们无法更新,因为当昵称与用户名相同时wordpress不会保存 因此,作为一种修复方法,我认为一种解决方法是在数据库上运行SQL命令,将所有注册的昵称简单地重置为“generic昵称”或类似的通用名称用于批量/一次性设置所有Wordpress用户昵称的SQL命令,sql,wordpress,Sql,Wordpress,我使用导入服务将用户从OpenCart平台导入WordPress安装。不幸的是,当这种情况发生时,所有导入的用户最终都使用了与“用户名”相同的“昵称”。因为wordpress不允许昵称与用户名相同,所以当用户尝试更新密码时,他们无法更新,因为当昵称与用户名相同时wordpress不会保存 因此,作为一种修复方法,我认为一种解决方法是在数据库上运行SQL命令,将所有注册的昵称简单地重置为“generic昵称”或类似的通用名称 我不擅长使用SQL,所以我要求提供一个建议,说明我将运行什么命令来执行此
我不擅长使用SQL,所以我要求提供一个建议,说明我将运行什么命令来执行此操作 这是SQL Server吗?我刚刚测试了将100行更新到测试数据库中。您可以这样做,它更新每一行,计数器是从1到100的键
DECLARE @counter INT
SET @counter = 1
WHILE @counter <= 100
BEGIN
UPDATE users_table
SET nickname = 'GenericNickname'
WHERE users_key = @counter;
SET @counter = @counter + 1
END
DECLARE @userKey INT
DECLARE user_cursor CURSOR FOR
SELECT dbo.users.user_key
FROM dbo.users
OPEN user_cursor;
FETCH next FROM user_cursor INTO @userKey;
WHILE @@FETCH_STATUS = 0
BEGIN
UPDATE dbo.users
SET dbo.users.nickname = 'GenericNickname'
WHERE dbo.users.user_key = @userKey;
FETCH next FROM user_cursor INTO @userKey;
END;
CLOSE user_cursor;
DEALLOCATE user_cursor;
go