pandas——数据库数据读取和保存pymysql、sqlalchemy

数据库数据读取和保存

参考:https://editor.csdn.net/md/?articleId=104669941

数据库环境的库pymysql、sqlalchemy

参考:https://www.cnblogs.com/zhming26/p/5627207.html
建立连接:
create_engine(“数据库类型+数据库驱动://数据库用户名:数据库密码@IP地址:端口/数据库”,其他参数)
需要注意的是,对于本地数据库需要创建之后才能,通过这种方式访问
下面例子中,已经在root用户下创建了mar_database数据库
列表写入数据库,to_sql (‘to_add’,con=conn,index=False,if_exists=‘replace’)
写入的数据库必须有写入权限,否则不会被写入
to_sql(‘表名’,con=链接,index=不写入,if_exists=存在时执行)
index=False表示不写入索引,
if_exists = ‘append’or’replace’or’fail’:分别表示:表存在时,追加,替代和默认的什么都不做

import pandas as pd
import numpy as np 
import pymysql
from  sqlalchemy import create_engine
#("数据库类型+数据库驱动://数据库用户名:数据库密码@IP地址:端口/数据库",其他参数)
#为了建立数据库连接
conn=create_engine('mysql+pymysql://root:password@localhost:3306/mar_database')
sql='select * from mar_table'#这个是数据库中列表显示的sql语句
df1=pd.read_sql(sql,conn)#通过数据库和列表的读取
print(df1)
df2=pd.read_csv(r'my_csv.csv',encoding='gbk')	#把表中的内容写入到变量,通过变量将数据写入数据库
df2.to_sql('to_add',con=conn,index=False,if_exists='replace')
'''
   num name sex  age
0    1   小红   女   20
1    2   小绿   女   20
'''
'''下面的不是显示出来的,是数据库里边改变的
mysql> show tables;  #通过程序添加了一个数据表to_add
+------------------------+
| Tables_in_mar_database |
+------------------------+
| mar_table              |
| to_add                 |
+------------------------+
mysql> select * from to_add;	#显示被添加的表的内容
+------+------+------+
| 姓名 | 年龄 | 性别 |
+------+------+------+
| 王贵 |   24 | 男   |
| 狗子 |   35 | 男   |
| 黑蛋 |   23 | 女   |
| 小五 |    5 | 男   |
| 李四 |    6 | 男   |
| 小红 |    4 | 女   |
+------+------+------+
'''
发布了70 篇原创文章 · 获赞 1 · 访问量 2431

猜你喜欢

转载自blog.csdn.net/weixin_43794311/article/details/104625049