【发布时间】:2022-01-05 19:18:27
【问题描述】:
我收到以下错误:
TypeError: MySQLConnectionAbstract.__init__() takes 1 positional argument but
2 were given
这是我的db.py:
import mysql.connector
localhost = "localhost"
username = "Admin"
password = "test123"
db = "testing"
Connect = "host = '{}', user = '{}', password = '{}', db = '{}'".format(localhost, username, password, db)
cnn = mysql.connector.connect(Connect) # line 16 error
# cnn = mysql.connector.connect(host ="localhost", user = "Admin", password = "test123", db = "testing")
如果我像下面这样编写正确的连接,那么它就起作用了。
cnn = mysql.connector.connect(host ="localhost", user = "Admin", password = "test123", db = "testing"
但是,如果我编写如下代码,它将不起作用:
cnn = mysql.connector.connect(Connect)
这是打印到终端的完整错误:
Traceback (most recent call last):
File "c:\Users\herok\Documents\MyApp 3\db.py", line 16, in <module>
cnn = mysql.connector.connect(Connect)
File "C:\Users\herok\AppData\Local\Programs\Python\Python310\lib\site-packages\mysql\connector\__init__.py", line 273, in connect
return MySQLConnection(*args, **kwargs)
File "C:\Users\herok\AppData\Local\Programs\Python\Python310\lib\site-packages\mysql\connector\connection.py", line 72, in __init__
super(MySQLConnection, self).__init__(*args, **kwargs)
TypeError: MySQLConnectionAbstract.__init__() takes 1 positional argument but 2 were given
【问题讨论】:
-
connect 函数没有将连接字符串定义为其arguments 之一,因此它不起作用。使用“正确连接”。
标签: python mysql-python mysql-connector mysql-connector-python mysqlconnection