是否有在python中使用MS Access数据库的库?win32模块并不像MySQL库那么容易.有没有更简单的方法来使用Python的MS Access?
ste*_*han 39
根据你想做的事情,pyodbc可能就是你想要的.
import pyodbc
def mdb_connect(db_file, user='admin', password = '', old_driver=False):
driver_ver = '*.mdb'
if not old_driver:
driver_ver += ', *.accdb'
odbc_conn_str = ('DRIVER={Microsoft Access Driver (%s)}'
';DBQ=%s;UID=%s;PWD=%s' %
(driver_ver, db_file, user, password))
return pyodbc.connect(odbc_conn_str)
conn = mdb_connect(r'''C:\x.mdb''') # only absolute paths!
Run Code Online (Sandbox Code Playgroud)
Mic*_*las 12
我不认为win32很难.尝试使用其odbc模块.使用ODBC和PostgreSQL数据库的代码示例:
import odbc
def get_pg_ver(db_alias):
connection = odbc.odbc(db_alias)
try:
cursor = connection.cursor()
cursor.execute('SELECT version()')
for row in cursor.fetchall():
print row[0]
finally:
connection.close()
get_pg_ver('odbc_name/user/passwd')
Run Code Online (Sandbox Code Playgroud)
这与我在Python和Jython中使用的每个db驱动程序非常相似(我使用PostgreSQL,Oracle和Informix).
您可以使用pypyodbc在win32平台上轻松创建一个空的Access MDB文件,并压缩现有的Access MDB文件.
它可以像以下一样简单:
import pypyodbc
pypyodbc.win_create_mdb( "D:\\Your_MDB_file_path.mdb" )
Run Code Online (Sandbox Code Playgroud)
此外,作为dbi 2.0 ODBC库,pypyodbc与pyodbc高度兼容,您可以使用库进行SQL数据库查询,如SELECT,INSERT,UPDATE.
这是关于pypyodbc的Access支持的完整教程.
免责声明:我是pypyodbc的开发者.
| 归档时间: |
|
| 查看次数: |
85558 次 |
| 最近记录: |