Python 如何使用 pandas+sqlalchemy 來操作資料庫!三分鐘讓你知道!
平常寫了不少東西去各地方抓資料,抓來的資料總要找地放存
所以就找了跟資料庫連線的模組sqlalchemy,看起來Python很多使用者都用這套
稍微整理了一下基本使用的方法讓大家知道,接下來就來看看怎麼使用sqlalchemy吧
安裝sqlalchemy
pip install SQLAlchemy
連線方式
連線範例
echo=True 列印sql語句資訊
from sqlalchemy import create_engine
engine=create_engine('mysql+pymysql://username:password@host:port/dbname', echo=True)
其他DB連線方式
engine = create_engine(‘sqlite:///:memory:’, echo=True) #sqlite記憶體
engine = create_engine(‘sqlite:///test.db’,echo=True) #sqlite檔案
engine = create_engine(“mysql+pymysql://username:password@host:port/dbname”,echo=True) #mysql+pymysql
engine = create_engine(‘mssql+pymssql://username:password@host:port/dbname’,echo=True) #mssql+pymssql
這邊注意 有用到 mysql 這種資料庫的 就要安裝連線模組 pymysql 或是 pymssql
簡單demo
這邊簡單用sqlite來demo
查詢
連線後用execute()查詢後回來的資料,再用pandas包成一個dataframe
from sqlalchemy import create_engine
import pandas as pd
conn = create_engine('sqlite:///data/data.db').connect()
sql = 'select * from test'
result = conn.execute(sql)
result_df = pd.DataFrame([dict(i) for i in result])
result_df .head()
sqlalchemy 實際上好用的是ORM功能
他在連線資料庫的部分也可以分別用不同的資料庫
在做新增、修改、查詢、刪除的部分,使用 sqlalchemy 來連線,就非常方便可以隨時調整資料庫