1负芋、MySQL-python????
又叫 MySQLdb只支持 Python2.x,
pip install MySQL-python? # 安裝
import? MySQLdb
db = MySQLdb.connect(
?? host="localhost",? # 主機(jī)名
?? user="user",???? # 用戶名
?? passwd="123456789", #? 密碼
?? db="testdb")??? # 數(shù)據(jù)庫(kù)名稱
cur = db.cursor() # 查詢前漫蛔,必須先獲取游標(biāo)
cur.execute("SELECT * FROM YOUR_TABLE_NAME") # 執(zhí)行SQL語(yǔ)句
for row in cur.fetchall():
? print(row[0])
db.close()
2.PyMySQL
速度上比不上 MySQLdb
pip install PyMySQL # 安裝
import? pymysql
pymysql.install_as_MySQLdb()?? #為了兼容mysqldb
conn = pymysql.connect(host='127.0.0.1', user='root',? passwd="xxx", db='mysql')
cur = conn.cursor() # 查詢前,必須先獲取游標(biāo)
cur.execute("SELECT Host,User FROM user")? # 執(zhí)行SQL語(yǔ)句
for r in cur:
? print(r)
cur.close()
conn.close()
3.SQLAlchemy3既支持原生 SQL旧蛾,又支持 ORM 的工具
import? pandas as pd
import sqlalchemy
sql='select * from stu'
engine =? sqlalchemy.create_engine('mysql+pymysql://root:mysql@localhost:3306/data')? #連接引擎
df = pd.read_sql(sql,engine)?? ? #從數(shù)據(jù)庫(kù)中讀取
df.to_sql(table,engine, if_exists='append')? ? #寫到數(shù)據(jù)庫(kù)中,如果該表已經(jīng)存在,則追加