在开发中我们可能需要使用python连接服务器上的数据库进行本地化操作或自动化操作,本文介绍python连接服务器的方法。
Python 连接 SQL Server
import pyodbc
conn = pyodbc.connect(r"DRIVER={SQL Server};SERVER="+'节点地址'+";DATABASE="+'数据库'+";UID=用户名;PWD="+'密码'+"")
sql = ‘select * from table;’
# 下面方式二选一
# 1
cur = conn.cursor()
cur.execute(sql)
cur.commit()
data = cur.fetchall()
# 2
data = pd.read_sql(sql,conn)
下面的方法可能会出警告,但效率高一些。
Python 连接 hive
python 连接 hive 有两种方法,一直是直接连接,另一只则是通过 impala 连接,impala 不通过MR,所以效率高些,但SQL语句与hive略有不同,函数较少,对于复杂操作难以实现。
from impala.dbapi import connect
from pyhive import hive
# 直接连接hive
conn = hive.Connection(host='192.168.0.0', port=10000, username='hive', database='default')
# 通过impala连接hive
def conn_hive():
the_ip = '192.168.0.0'
the_conn = connect(host=the_ip, port=21050, database="global_ie_new")
return the_conn
conn = conn_hive()
sql = 'select * from table'
cur = conn.cursor()
cur.execute(sql)
conn.commit()