7、数据清洗之数据库文件读写

前言:

#使用sqlalchemy建立连接

#需要知道数据库的相关参数,如数据库的IP地址、用户名和密码等

#通过pandas中read_sql函数读入,读取完以后就dataframe格式

#通过dataframe的to_sql方法保存

#sql='select' * from meal_order_info'     #选择数据库中表名称

#df1=pd.read_sql(sql,conn)

#df.to_sql('testdf',con=conn,index=False,if_exists='replace')

数据库建立连接参数

conn=create_engine('mysql+pymysql://user:password@IP:3306/test01')

*root:用户名

*password:密码

*IP:服务器IP,本地电脑用localhost

*3306:端口号

*test01:数据库名称

df.to_sql(name,con=engine,if_exists='replace/append/fail',index=False)

*name:表名

*con:连接

*if-exists:表如果存在什么处理。三个选项append追加,replace代表删除原表,建立新表,fail代表什么都不干

*index=False:不插入索引index

实操演练:

import numpy as np
import pandas as pd
import pymysql
import sqlalchemy import creat_engine
conn=create_engine('mysql+pymysql://root:password@localhost:3306/test01')

sql='select * from meal_order_info'
df1=pd.read_sql(sql,conn)#建立连接
df1.head()

def query(table):
    host='localhost'
    user='root'
    password=''
    database='test01'
    port=3306
    conn=create_engine('mysql+pymysql://{}:{}@{}:{}/{}'.format(user,password,host,port,database))#通过占位符访问
sql='select * from'+table
result=pd.read_sql(sql,con=conn)
return result
df2=query('你的数据库表名')
#数据保存
#excel文件保存到数据库中
import os
os.getcwd
os.chdir('f:\\1\\')
df=pd.read_csv('1.csv')
#报错机制
try:
    df.to_sql('testdf',con=conn,index=False,if_exists='replace')
except:
    print('error')

发布了65 篇原创文章 · 获赞 20 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/l641208111/article/details/104224902
今日推荐