Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于批量更改密码的简单sql_Sql_Mysql_Database_Wordpress - Fatal编程技术网

用于批量更改密码的简单sql

用于批量更改密码的简单sql,sql,mysql,database,wordpress,Sql,Mysql,Database,Wordpress,更改用户1的密码如下所示: UPDATE `mydb`.`wp_users` SET `user_pass` = MD5( 'password' ) WHERE `wp_users`.`ID` = 1; 现在,我有这样格式的文本文件: user30 pass30 ... user2 pass2 user1 pass1 如何在不手动操作的情况下更改所有这些用户的密码?也许是可以从这个文件导入它的sql命令?还是其他方法?我使用的是phpmyadmin,也许我可以以某种方式将数据导入

更改用户1的密码如下所示:

UPDATE `mydb`.`wp_users` 
   SET `user_pass` = MD5( 'password' ) 
 WHERE `wp_users`.`ID` = 1;
现在,我有这样格式的文本文件:

user30 pass30
...
user2 pass2
user1 pass1
如何在不手动操作的情况下更改所有这些用户的密码?也许是可以从这个文件导入它的sql命令?还是其他方法?我使用的是phpmyadmin,也许我可以以某种方式将数据导入这些特定字段


我只想导入密码5及更高版本。

我不知道有哪种SQL会导入这样的更新。但是,您可以使用username和new_password字段将文件导入到一个表中(我们称之为“password_changes”),然后执行如下操作

UPDATE wp_users, password_changes
SET wp_users.user_pass = md5(password_changes.new_password)
WHERE wp_users.user_login = password_changes.username

上面的语句将仅更改文件中列出的用户的密码(并因此导入到password_changes表中)。但是,如果您想额外确保用户1-4不会被更改,请将
和wp_users.ID>=5
添加到查询中。

您必须依赖文本文件吗?看起来你可以在一个循环井中处理这个问题,那么我如何将这些数据导入到这个循环中呢?我不关心方法,因为我不必手动重新排序此文件中的任何内容;)。不使用文件或自动更改其中的某些内容就可以了。好的,我如何导入它?Phpmyadmin CSV导入?如何仅导入用户5及以上的密码?对不起,我没有在我的问题中写它,也许我应该把它添加到那里。这可以想象得到…但是如果文件已经存在并且看起来像那样,你需要指定字段之间用空格而不是逗号分隔。我忘了MyAdmin是否会这么做,“用户5及以上”?澄清。上面的UPDATE语句将仅更改文件中列出的用户的密码(并因此导入密码更改表)。但是,如果您想更加确定,请向查询中添加
和wp_users.ID>=5
。@lorem:使用导入文件-cHao的权利,唯一真正的障碍是将数据从文件中取出并放入数据库。