首页 > 解决方案 > 使用 PyMySQL 连接数据库时出错

问题描述

连接数据库时出现以下错误。

Traceback (most recent call last):
  File "PycharmProjects/test.py", line 13, in <module>
    connection = pymysql.connect(host=serverip,user=dbuser,password=dbpassword,db=dbname,port=dbport)
  File "PycharmProjects\untitled\venv\lib\site-packages\pymysql\__init__.py", line 94, in Connect
    return Connection(*args, **kwargs)
  File "PycharmProjects\untitled\venv\lib\site-packages\pymysql\connections.py", line 325, in __init__
    self.connect()
  File "PycharmProjects\untitled\venv\lib\site-packages\pymysql\connections.py", line 589, in connect
    self.host_info = "socket %s:%d" % (self.host, self.port)
TypeError: %d format: a number is required, not str

以下是我的代码:

serverip = "1.2.3.4"
dbuser="root"
dbpassword="passwrd"
dbname="db"
dbport="3306"
connection = pymysql.connect(host=serverip,user=dbuser,password=dbpassword,db=dbname,port=dbport)

def main():

    cur = connection.cursor()
    cur.execute("SELECT VERSION()")
    data = cur.fetchone()
    print(data)

    # disconnect from server
    connection.close()

if __name__ == "__main__":
    main()

即使我尝试将主机名更改为“test.aws.com”,我也会收到类似的错误。

标签: pythonpymysql

解决方案


推荐阅读