是否可以使用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"')
答案 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'))