在python中使用pymysql连接数据库

时间:2018-05-15 09:58:43

标签: database python-3.x mysql-python pymysql

我还在学习如何使用python库来处理数据库

执行以下代码时发生操作错误 screenshot

代码段:

import pymysql
db1=pymysql.connect(host="127.0.0.1",user="root",password='root',port=3306,db='world')

a=db1.cursor()

sql='SELECT * from CITY'
print(a.execute(sql))

错误:

(1045, "Access denied for user 'root'@'localhost' (using password: NO)")

这可能是什么原因?

1 个答案:

答案 0 :(得分:1)

  

执行以下代码屏幕截图时发生了操作错误。这可能是什么原因?

  • 有问题的错误是:

    (1045, "Access denied for user 'root'@'localhost' (using password: NO)")
    

    它显示您实际在连接参数中提供了一个时没有使用密码进行连接。这是pymysql的一个已知错误,所以答案可能依赖于版本。如果您通常可以使用mysql -u root -proot world(连接参数中的数据库,密码和用户)连接到mysql,这意味着您的数据库确实具有正确的凭据并且在连接方法未发送密码时需要密码,很可能是由于旧的版。另一方面,如果您无法连接,则很可能您的root密码为空,您需要正确设置。此外,您还可以选择访问数据库' world'对于root用户。