python - MySQL 与 Python 的连接不起作用
问题描述
我想通过 Python 连接 MySQL,虽然我成功地使用直接写入用户名、密码等凭据进行连接,但我想让它有点动态。所以我尝试了:
import mysql.connector
import pandas as pd
def connection():
host=input('Enter host')
user=input('Enter User Name')
passwd=int(input('passwd'))
database=input('database')
mydb= mysql.connector.connect(host="host", user="user", passwd="passwd", database="database")
return mydb
connection()
但是,它最终给出了错误:
InterfaceError: 2003: Can't connect to MySQL server on 'host:3306' (11001 getaddrinfo failed)
请帮帮我。如果您在带来一些动态用户输入凭据的同时有更好的解决方案,我将非常感激。谢谢你。
解决方案
您正在将“主机”之类的搅拌传递给数据库,而不是变量
所以删除双引号,如
import mysql.connector
import pandas as pd
def connection():
host=input('Enter host')
user=input('Enter User Name')
passwd=int(input('passwd'))
database=input('database')
mydb= mysql.connector.connect(host=host, user=user, passwd=passwd, database=database)
return mydb
connection()
推荐阅读
- python - 如何将 {% static ' file.png' %} 放在 div 标签中,其中单引号和双引号都已在 div 标签中使用
- javascript - 如何拆分和排列具有多个数据点[数组]的JS对象?
- python - 带有 Python 中文本数据的 MultiOutputClassifier
- node.js - Webpack 如何使用 Target 属性
- java - 可以将重试配置为在 null 上重试吗?
- python - Django Autocomplete,如何获取 ID 但显示文本值
- php - 运行php项目时出现白屏
- java - MapStruct - 将具有不同对象类型的两个列表映射到具有另一种对象类型的第三个列表
- postgresql - 从单独的键和值数组构造 JSONB
- java - AspectJ inside(is(FinalType)) 错过了