从Python连接到Access [英] Connection to Access from Python

查看:947
本文介绍了从Python连接到Access的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


可能重复:

如何将pyodbc连接到Access(.mdb)数据库文件

我想从Python连接到数据库Boreas(Access)。如何从Python连接到Access数据库Northwind?

I want to be connected to a database Boreas (Access) from Python. How to be connected from Python to Access database Northwind?

推荐答案

这里有2种方式,COM调度和odbc。你将需要pywin32扩展和/或pyodbc来使用这些方法。

Here are 2 ways, with COM dispatch and with odbc. You will need the pywin32 extensions and/or pyodbc to use these methods.

import win32com.client
import pyodbc

def ado():
    '''
    connect with com dispatch objs
    '''
    conn = win32com.client.Dispatch(r'ADODB.Connection')
    DSN = ('PROVIDER = Microsoft.Jet.OLEDB.4.0;DATA SOURCE = ' + db +  ';')
    conn.Open(DSN)

    rs = win32com.client.Dispatch(r'ADODB.Recordset')
    strsql = "select * from deer"
    rs.Open(strsql, conn, 1, 3)
    t = rs.GetRows()
    conn.Close()
    return t

def odbc():
    '''
    connects with odbc
    '''        
    constr = 'Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=' + db
    conn = pyodbc.connect(constr, autocommit=True)
    cur = conn.cursor()
    strsql = "select * from deer"
    cur.execute(strsql)
    t = list(cur)
    conn.close()
    return t

if __name__ == '__main__':

    db = 'c:/work/deer/deer.mdb'
    data1 = ado()
    data2 = odbc()

好运气,

Mike

这篇关于从Python连接到Access的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆