pymysql TypeError: __init__() takes 1 positional argument but 5 were given

pymysql 连接数据库时报错误:

TypeError: init() takes 1 positional argument but 5 were given

原因:

在windwos使用时pymysql版本为0.9.3,将代码拉取至linux环境时使用的pymysql是1.0.2版本

解决方法:

pymysql在1.0以后的版本 无法使用 db = pymysql.connect(“localhost”,“root”,“root”,“testdb” )
需要修改为 db = pymysql.connect(host=“localhost”, user=“root”, password=“root”, database=“testdb”)
这样就可以连接上MySQL数据库了

db_test = pymysql.connect(host, user, password, database)
改为:
db_test = pymysql.connect(host=host, user=user, password=password, database=database)

  

posted @ 2021-11-24 14:03  香菜哥哥  阅读(1168)  评论(0编辑  收藏  举报