import pandas as pd import sqlalchemy import pymysql import pymssql import pyhive # 连接hive def con_hive(sql): user_name = "hive链接地址" hive_engine = sqlalchemy.create_engine(user_name) data = pd.read_sql(sql, hive_engine) print ("\n数据读取完毕\n") return data # 连接mysql def con_mysql(sql): conn = pymysql.connect(host="服务器地址" , port = '端口' , user="用户名" , passwd="用户密码" , db = '默认数据库名' , charset="utf8") cursor = conn.cursor() cursor.execute(sql) data = pd.read_sql(sql,conn) conn.close() print ("\n数据读取完毕\n") return data # 连接Oracle def con_oracle(sql): db = pymssql.connect(server="服务器地址" , port='端口' , user="用户名" , password="用户密码" , database="默认数据库名" ) cursor = db.cursor() cursor.execute(sql) data = pd.read_sql(sql,db) db.close() print ("\n数据读取完毕\n") return data # 写入 mysql 数据库 def write_into_mysql(data,table): # table 待写入的数据表名 engine = sqlalchemy.create_engine('mysql+pymysql://用户名:密码@服务器地址:密码/默认数据库名?charset=utf8') # if_exists='replace' 表示覆盖原表数据 pd.io.sql.to_sql(data,table,engine,if_exists='replace',index = False) print ("数据存储完毕")
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/220431.html原文链接:https://javaforall.net
