为什么pythonmysql连接器不接受作为变量的登录?我怎么能修好它?

2024-10-02 16:34:20 发布

您现在位置:Python中文网/ 问答频道 /正文

例如,这是有效的:

mydb = mysql.connector.connect(
  host="localhost",
  user="myuser",
  passwd="Ewew42sdsfds??qw",
  database="mydatabase"
)

但如果我把这个放进课堂上

def __init__( self, params , headless=False ):
    self.host=params["mysqlHost"],
    self.user=params["mysqlUser"],
    self.passwd=params["mysqlPasswd"],
    self.database=params["mysqlDatabase"]

    mydb = mysql.connector.connect(
      host=self.host,
      user=self.user,
      passwd=self.passwd,
      database=self.database
    )

我有个错误: 文件“C:\ProgramData\Anaconda3\lib\site packages\mysql\connector\摘要.py“,第497行,在set\u login中” 自身用户=用户名.strip()

AttributeError:“tuple”对象没有属性“strip”

我试着把它变成一根弦,我也试着这样修改:

mydb = mysql.connector.connect(self.host,self.user,self.passwd,self.database)

你知道吗?你知道吗


Tags: selflocalhosthostconnectorconnectmysqlparamsdatabase
2条回答

似乎params[“mysqlUser”]是一个元组,而不是str,您缺少了一个“self”

self.mydb = mysql.connector.connect(

我不知道什么是真正的问题,但我修改了我的代码,工作得很好。你知道吗

config = {
      'user': params["mysqlUser"],
      'password': params["mysqlPasswd"],
      'host': params["mysqlHost"],
      'database': params["mysqlDatabase"],
      'raise_on_warnings': True
    }



    self.mydb = mysql.connector.connect(**config)

相关问题 更多 >