我正在使用以下代碼從訪問資料庫中讀取表作為熊貓資料框:
import pyodbc
import pandas as pd
connStr = (
r"DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};"
r"DBQ=C:\Users\A\Documents\Database3.accdb;"
)
cnxn = pyodbc.connect(connStr)
sql = "Select * From Table1"
data = pd.read_sql(sql,cnxn) # without parameters [non-prepared statement]
# with a prepared statement, use list/tuple/dictionary of parameters depending on DB
#data = pd.read_sql(sql=sql, con=cnxn, params=query_params)
我計劃進行一些轉換,然后以類似的方式將資料幀寫回資料庫。有誰知道我該怎么做?
謝謝
uj5u.com熱心網友回復:
當使用 pandas 和 SQLite 以外的資料庫時,我們需要使用 SQLAlchemy。在這種情況下,我們將使用sqlalchemy-access方言。
(我目前是維護者。)
例子:
import pandas as pd
import sqlalchemy as sa
connection_string = (
r"DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};"
r"DBQ=C:\Users\Public\test\sqlalchemy-access\sqlalchemy_test.accdb;"
r"ExtendedAnsiSQL=1;" )
connection_url = sa.engine.URL.create(
"access pyodbc",
query={"odbc_connect": connection_string}
)
engine = sa.create_engine(connection_url)
df = pd.DataFrame([(1, "foo"), (2, "bar")], columns=["id", "txt"])
df.to_sql("my_table", engine, index=False, if_exists="append")
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/488982.html
標籤:Python 熊猫 毫秒访问 pyodbc sqlalchemy 访问
上一篇:訪問應用程式中的自動更新
下一篇:查找字串中第一個數字的位置并拆分
