用于批量/一次性设置所有Wordpress用户昵称的SQL命令

用于批量/一次性设置所有Wordpress用户昵称的SQL命令,sql,wordpress,Sql,Wordpress,我使用导入服务将用户从OpenCart平台导入WordPress安装。不幸的是,当这种情况发生时,所有导入的用户最终都使用了与“用户名”相同的“昵称”。因为wordpress不允许昵称与用户名相同,所以当用户尝试更新密码时,他们无法更新,因为当昵称与用户名相同时wordpress不会保存 因此,作为一种修复方法,我认为一种解决方法是在数据库上运行SQL命令,将所有注册的昵称简单地重置为“generic昵称”或类似的通用名称 我不擅长使用SQL,所以我要求提供一个建议,说明我将运行什么命令来执行此

我使用导入服务将用户从OpenCart平台导入WordPress安装。不幸的是,当这种情况发生时,所有导入的用户最终都使用了与“用户名”相同的“昵称”。因为wordpress不允许昵称与用户名相同,所以当用户尝试更新密码时,他们无法更新,因为当昵称与用户名相同时wordpress不会保存

因此,作为一种修复方法,我认为一种解决方法是在数据库上运行SQL命令,将所有注册的昵称简单地重置为“generic昵称”或类似的通用名称


我不擅长使用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