db= pymysql.connect(host="localhost",user="lhx",password="Ly123456")
cursor=db.cursor() # 使用cursor()方法获取操作游标
print('创建帐号开始啦!')
sql="create user '%s'@'%s' identified by '%s'"%(self.username.get(),'%',self.password.get())
print('111')
cursor.execute(sql) # 创建可在所有机器上可连接的用户密码
print('帐号创建成功!')
sql="grant all privileges on *.* to '%s'@'%s'"%(self.username.get(),'%')
print(sql)
print('222')
cursor.execute(sql) # 给上面创建的用户名、密码分配权限
print('权限分配成功!')
db.close()
这段代码 上面的帐号、密码是可以创建成功的,但下面的代码,给这个帐号分配权限却不行。但是我把print(sql)中显示在运行窗口中的字符串复制粘贴到mysql命令行中执行是可以的,说明语句是没问题,但在python中就无法执行,出现如下错误:
pymysql.err.OperationalError: (1045, "Access denied for user 'lhx'@'%' (using password: YES)")
请教怎样修改才能成功!