我正在尝试使用以下命令重置root密码:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('test');
它给了我以下错误:
错误1064(42000):您的SQL语法有错误;检查 手册,对应右边的MySQL服务器版本 在' PASSWORD附近使用的语法(' test')'在第1行
请让我知道我在这里做错了什么。
答案 0 :(得分:4)
您不需要引用用户名,它应该是
let tableInfo = Array(db.prepare("PRAGMA table_info(users)"))
if tableInfo.filter { col in col[1] == "name" } == nil {
db.alter(table: users, add: name)
}
if tableInfo.filter { col in col[1] == "age" } == nil {
db.alter(table: users, add: age)
}
重新设置密码的另一种方法是
以root身份登录mysql,然后更新mysql> set password for root@'localhost' = password('test');
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges ;
Query OK, 0 rows affected (0.00 sec)
数据库mysql
表
User
答案 1 :(得分:0)
我知道它很旧,但是可以帮上忙。
使用PASSWORD()函数时出现此错误:
SET PASSWORD FOR 'myuser@localhost' = PASSWORD('my_new_password');
错误1064(42000):您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以在附近使用正确的语法 第1行的“ PASSWORD('basket8')”
因为在MySQL 5.7和更高版本中,没有必要使用PASSWORD()函数:
SET PASSWORD FOR 'myuser'@'localhost' = 'my_new_password';
Query OK, 0 rows affected (0.01 sec)