pandas读取外部数据---(2)使用Pandas连接mysql、 读取及存储(写入)mysql数据

目录

1、使用pandas连接mysql

2、使用Pandas连接mysql查询读取mysql数据

3、使用Pandas连接mysql 并插入数据


1、使用pandas连接mysql

需要安装的库:pip install pymysql     pip install sqlalchemy

代码一(方法1):

import pandas as pd
import pymysql
from sqlalchemy import create_engine

# 初始化数据库连接,使用pymysql模块
# MySQL的用户:root, 密码:123456, 端口:3306,数据库:lean2
con = create_engine('mysql+pymysql://root:123456@localhost:3306/learn2')

代码二(方法2):

import pandas as pd
import pymysql
con=pymysql.connect(host='127.0.0.1',port=3306,user='root',passwd='131129',db='learn2',use_unicode=True, charset="utf8")

2、使用Pandas连接mysql查询读取mysql数据pd.read_sql_query(sql, con = con)

import pandas as pd
import pymysql
from sqlalchemy import create_engine

# 初始化数据库连接,使用pymysql模块
# MySQL的用户:root, 密码:123456, 端口:3306,数据库:lean2
con = create_engine('mysql+pymysql://root:123456@localhost:3306/learn2')


# 查询语句,选出emp表中的所有数据
sql = ''' select * from emp; '''
# read_sql_query的两个参数: sql语句, 数据库连接
df = pd.read_sql_query(sql, con = con)
# 输出employee表的查询结果
print(df)

3、使用Pandas连接mysql 并插入数据

df.to_sql('tablename',con=con,index=ture/false,if_exists='append/fail/replace')

import pandas as pd
import pymysql
from sqlalchemy import create_engine

# 初始化数据库连接,使用pymysql模块
# MySQL的用户:root, 密码:123456, 端口:3306,数据库:lean2
con = create_engine('mysql+pymysql://root:123456@localhost:3306/learn2')


#直接写入数据-->mydf-->mydf表会自动创建
# 新建pandas中的DataFrame, 只有id,num两列
df = pd.DataFrame({'id': [1, 2, 3, 4], 'name': ['jalen', 'xr', 'lili', 'liuliu']})
# 将新建的DataFrame储存为MySQL中的数据表,储存index列
df.to_sql('mydf', con, index=True)
print('Read from and write to Mysql table successfully!')

# fail的意思如果表存在,啥也不做
# replace的意思,如果表存在,删了表,再建立一个新表,把数据插入
# append的意思,如果表存在,把数据插入,如果表不存在创建一个表!!
#在存在的表中追加数据-->mydf
df1 = pd.DataFrame({'id': [5, 6, 7, 8], 'name': ['jalen', 'xr', 'lili', 'liuliu']})
df1.to_sql('mydf', con, index=True,if_exists='append')
print('Append data to mysql database successfully!')
发布了103 篇原创文章 · 获赞 75 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_41685388/article/details/103770964