我无法使用unixODBC作为在Mac OS上运行的基础驱动程序连接到MySQL ODBC 8.0 Unicode驱动程序。
我正在python 3.6上使用pyodbc软件包。当我使用ANSI驱动程序但Unicode驱动程序不起作用时,一切正常。
这是我的Mac上安装的可用驱动程序。
[“ MySQL ODBC 8.0 ANSI驱动程序”,“ MySQL ODBC 8.0 Unicode驱动程序”,“ ODBC驱动程序”,“ ODBC连接池”]
我的连接字符串
self.connection_string ='Driver = {MySQL ODBC 8.0 Unicode驱动程序};服务器=本地主机;数据库= db_name; Uid = root; Pwd = P @ kistan1; charset = UTF8; Option = 3;'
pyodbc检测到的错误是
('H000','[H000] [(0)(SQLDriverConnect)')
我能够使用iODBCAdmin建立连接,这告诉我驱动程序是正确的。
答案 0 :(得分:0)
我不知道为什么在stmt = SET NAMES'utf8'之后可以使用,但是已经安装了Unicode驱动程序
DRIVER={MySQL ODBC 8.0 Unicode Driver}; SERVER=xxxxx; DATABASE=xxxxx; UID=xxxxx;PASSWORD=xxxxx; OPTION=3; port=3306; stmt=SET NAMES 'utf8';