Python连接Mysql数据库(pandas)

1、Python连接数据库

首先,确保已经安装好pandas、sqlalchemy、pymysql三个包

pip install pandas
pip install sqlalchemy
pip install pymysql

初始化数据库连接:

# 1.导入三个包
import pandas as pd 
from sqlalchemy import create_engine 
import pymysql

# 2.初始化数据库连接(按实际情况依次填写MySQL的用户名、密码、IP地址、端口、数据库名)

engine = create_engine('mysql+pymysql://root:123456@localhost:3306/mysql50')

# 这里“mysql+pymysql://”是指明通过pymysql这个包来连接数据库
# 如果觉得上方代码不够优雅也可以按下面的格式填写:
# engine = create_engine("mysql+pymysql://{}:{}@{}:{}/{}".format('用户名', '密码', 'IP地址', '端口号', '数据库名'))

2、Python读取数据库

写好查询语句并执行,将结果存入数据框DataFrame:

# 1.使用pandas的read_sql_query函数执行SQL语句,并存入DataFrame

sql_query = 'select * from student;' # sql查询语句

# 2.执行查询操作,并存入dataframe

query_result = pd.read_sql_query(sql_query,engine) 

# 3.看下查出来的数据是怎样的
df_read.head()  
image.png

3、Python写入数据库

# 1.新建DataFrame,将结构数据写入MySQL
df_write = pd.DataFrame({'id':[1,2,3],'name':['a','b','c'],'age':[111,112,113]})

# 2.查看即将写入的数据
df_write.head() 
image.png
# 3.将df_write储存为MySQL中的表,不储存index列.这里也不用先在数据库创建表
df_write.to_sql('testtable',engine,index = False)

在MySQL中查看该表:


image.png

你可能感兴趣的:(Python连接Mysql数据库(pandas))