连接到python中的mysql函数错误

时间:2018-02-07 18:54:24

标签: python mysql python-3.x function pyodbc

请耐心等待我,我是一个蟒蛇和编程菜鸟, 我正在编写一个连接到mysql数据库的函数

server = "localhost"
dbname = "db"
dbuser = "root"
dbpassword = "Klingon"
port = "3399"
driver = "{MySQL ODBC 5.3 ANSI Driver}"


def mysql_cnxn(driver, serverip, port, dbname, dbuser, dbpassword):

conns = "{0},{1},{2},{3},{4},{5}".format(driver, serverip, port, dbname, dbuser, dbpassword)

conn = pyodbc.connect(conns)
return conn

mysql_cnxn(driver, serverip, port, dbname, dbuser, dbpassword)

我目前收到以下错误:

pyodbc.InterfaceError:(' IM002',' [IM002] [Microsoft] [ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序(0)(SQLDriverConnect ); [IM002] [Microsoft] [ODBC驱动程序管理器]无效的连接字符串属性(0)')

我确定我如何调用该功能,请帮忙。 我正在使用python 3.6.4,如果这会有所帮助。

2 个答案:

答案 0 :(得分:0)

如果您打印conns的值,您会看到它看起来像

{MySQL ODBC 5.3 ANSI Driver},localhost,3399, ...

并且它不是有效的ODBC连接字符串,因为它缺少必需的关键字。它应该看起来像

Driver={MySQL ODBC 5.3 ANSI Driver};Server=localhost;Port=3399; ...

有关详细信息,请参阅connectionstrings.com页面here

答案 1 :(得分:0)

您可以使用" mysql.connector"用于在MySQL中访问数据库的API。这里的一些教程: https://dev.mysql.com/doc/connector-python/en/connector-python-example-cursor-select.html