连接数据库-corina
import pymysql
import pandas as pd
from pandas import DataFrame
from sqlalchemy import create_engine
class mysql():
def __init__(self,host,port,user,password,database):
self.host=host
self.port=port
self.user=user
self.password=password
self.database=database
self._conn = None
self.Connect()
def Connect(self):
if not self._conn:
self._conn=pymysql.connect(host=self.host,port=self.port,user=self.user,password= self.password,database=self.database,charset='utf8')
#查询数据库表中的所有数据
def Query(self,sql):
self.cursor = self._conn.cursor()
self.excute = self.cursor.execute(sql)
row_all = self.cursor.fetchall()
index = self.cursor.description
new_index=[]
for i in range(len(index)):
new_index.append(index[i][0])
data_sql=DataFrame(list(row_all),columns=new_index)
return data_sql
#数据保存到数据库
def my_keep(self,data,filename):
db_url = (
'{driver}://{user}:{pwd}@{host}:{port}/{name}?charset=utf8'.format(driver='mysql+pymysql', user=self.user,
port=self.port, pwd=self.password,
host=self.host, name=self.database))
my_engine = create_engine(db_url)
pd.io.sql.to_sql(data, filename, my_engine, schema=self.database, if_exists='replace', index=True,index_label=None)
def my_close(self):
self.cursor.close()
self._conn.close()
posted on 2018-09-21 11:33 happygril3 阅读(129) 评论(0) 收藏 举报
                    
                
                
            
        
浙公网安备 33010602011771号