1. 通過 pymssql 連接
首先創建連接
import pymssql
conn = pymssql.connect(host='xxx.xxx.xxx.xxx',
user='sa',
password='xxxxxxx',
database='dbName',
charset='utf8')
這種方式創建的連接可以通過 Pandas 的 read_sql()
函數獲取數據,但是沒法通過 to_sql()
向數據庫保存數據
2. 通過 sqlalchemy 連接
使用 sqlalchemy 連接 SQL Server 時,數據的讀取和保存都可以通過 Pandas 很方便地完成
import pandas as pd
from sqlalchemy import create_engine
engine = create_engine('mssql+pyodbc://sa:password@IP/dbName?driver=SQL+Server')
# engine = engine.connect().connection # 遇到關於sqlite_master的報錯時使用該行
sql = 'select * from table_name'
df = pd.read_sql(sql,engine)
df.to_sql('table_name2', engine, index=False)