簡體   English   中英

如何在 Python 中創建 mdb 數據庫文件?

[英]How do you create a mdb database file in Python?

我想用 Python 在 windows 中創建一個 mdb 數據庫文件,但似乎無法用 Python Docs 弄清楚。 我讀到的所有內容都與建立連接以及如何處理光標有關。

有什么想法嗎? 謝謝...

我對comtypes模塊的體驗相當不錯。 對於所使用的方法,您可能希望有一個方便的 Access DAO/ADO/VBA 參考,但是,由於comtypes模塊動態生成 COM 庫包裝器,因此沒有內置文檔。

這是它如何工作的一個簡短示例。 (繼續並自己測試一下。)

from comtypes.client import CreateObject

access = CreateObject('Access.Application')

from comtypes.gen import Access

DBEngine = access.DBEngine
db = DBEngine.CreateDatabase('test.mdb', Access.DB_LANG_GENERAL)
      # For me, test.mdb was created in my My Documents folder when I ran the script 

db.BeginTrans()

db.Execute("CREATE TABLE test (ID Text, numapples Integer)")
db.Execute("INSERT INTO test VALUES ('ABC', 3)")

db.CommitTrans()
db.Close()

(對於類型庫的 Python 包裝器模塊以前不存在的情況,在CreateObject行之后移動了第二個 import 語句。)

如果還沒有,請先下載並安裝Microsoft Access Database Engine 2010 Redistributable

然后你應該安裝 pyodbc 模塊。

現在您可以連接訪問數據庫:

ConFileName=(r'c:\mydb\myaccess.mdb')
conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=' + ConFileName + ';')
cursor = conn.cursor()

要從數據庫中的任何表中進行選擇,請使用以下簡單代碼:

ConFileName=(r'c:\mydb\myaccess.mdb')
conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=' + ConFileName + ';')
cursor = conn.cursor()
cursor.execute('select * from table1')
for row in cursor.fetchall():
    Table1Array.append((row[0],row[1],row[2])
print(str(len(Table1Array))+" records in Table1 loaded successfully.")

您可以點擊此鏈接以獲取有關通過 Python 使用 MS Access 的更多信息:

https://elvand.com/python-and-ms-access/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM