我使用update user set authentication_string=password("!QAZxsw2") where user="root";
这种语法更改了root密码,但错误ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '("!QAZxsw2") where user="root"' at line 1
仍然弹出。我不知道为什么请帮忙!
我已经用谷歌搜索了这个问题,大多数文章告诉我使用update user set authentication_string=password("!QAZxsw2")where user ="root";
这种语法来更改我的root密码。我找不到在哪里弄错了。顺便说一句,我也尝试过此代码set password for root@localhost = password('!QAZxsw2');
,但是仍然得到相同的结果。
mysql> update user set authentication_string=password("!QAZxsw2") where user="root";
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '("!QAZxsw2") where user="root"' at line 1
答案 0 :(得分:0)
尝试在单引号中使用字符串值,例如,
update user set authentication_string=password('!QAZxsw2') where user='root';
查看链接-https://www.geeksforgeeks.org/mysql-change-user-password/
对于MySQL 5.7.6或更高版本,请使用命令
SET PASSWORD FOR 'root'@'localhost' = PASSWORD("!QAZxsw2");
答案 1 :(得分:0)
MySQL 5.7.5和更早版本
mysql>更新用户设置密码= PASSWORD(“!QAZxsw2”),其中User ='root';
MySQL 5.7.6及更高版本
mysql>为'root'@'localhost'= PASSWORD(“!QAZxsw2”);
或尝试使用以下命令,它在mysql8中对我有效:
mysql>为'root'='!QAZxsw2'设置密码;