七周成为数据分析师学习笔记(第七周)

一、Python连接数据库
1、安装pymysql
pip install pymysql
注意安装路径,注意环境切换
pip3 install pymysql(安装在python3下)
2、连接数据库

import pymysql
conn = pymysql.connect(
	host =  'localhost',   # 127.0.0.1
	user = 'root',
	password = '',
	db ='data'# 数据库名
	port = 3306,
	charset = 'utf8'	# 文本编码,gbk等
	)

2、创建游标

cur =  conn.cursor()
cur.execute('select * from data') # 执行select语句
data = cur.fetchall()
for d in data:
	print(d)
cur.close()	# 关闭游标
conn.close() # 关闭数据库

4、pandas处理

import pandas as pd
sql = 'select * from company'
pd.read_sql(sql, conn)# 旧版直接引用conn变量

新版:

import sqlalchemy 
engine = sqlalchemy.creat_engine('mysql + pymysql://root:123456@localhost:3306/data?charset=uft8') 
# 格式:user:password@localhost:port/data_name?charset=
pd.read_sql(sql, engine,)

数据筛选可以放服务器端用sql语句筛选,也可以读下来用pandas筛选

(二)写入数据库

def reader(query, db)
sql = query
engine = sqlalchemy.creat_engine('mysql + pymysql://root:123456@localhost:3306/{0}?charset=uft8'.format(database))$  
df = pd.read_sql(sql, engine,)
return df

df = reader('select * from data')
df.to_sql(name = 'newtable', con = 'mysql + pymysql://root:123456@localhost:3306/data?charset=uft8',
if _exists = 'fail', # append插入
index = False)

(三)注意事项
在数据库上建表,确定字段格式
从pandas传过来格式和预想不一样
if _exists= ‘append’,执行插入
index= True,没有预留列,有问题

换成csv格式to_csv

转自:https://blog.csdn.net/chenbaixing/article/details/105577485

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值