使用python3创建Windows DSN

时间:2016-07-05 08:38:16

标签: python database windows odbc

是否可以使用python 3在Windows中创建ODBC数据源?

以下语句使用python2成功运行但没有使用python3运行,为什么? ODBCCP32仅在py2?

中可用

ctypes.windll.ODBCCP32.SQLConfigDataSource(0, 4, "Microsoft Access Driver (*.mdb)", 'Uid="Admin"\x00DESCRIPTION="pyscript"\x00DSN="PYTEST"\x00pwd=""\x00DBQ="C:\\pytest.mdb"')

1 个答案:

答案 0 :(得分:0)

它没有工作,因为默认情况下python3中的所有字符串都是unicode字符串。

所以我不得不将其转换为' bytes'对象说: ctypes.windll.ODBCCP32.SQLConfigDataSource(0, 4, bytes('Microsoft Access Driver (*.mdb)', 'iso-8859-1'), bytes('Uid=Admin\x00DESCRIPTION=pyscript\x00DSN=PYTEST\x00pwd=\x00DBQ=C:\\pytest.mdb', 'iso-8859-1'))