SAP Hana 数据库编程接口 - Python

Python Hana DB 驱动
Python 终于在 Hana 平台上成为一等公民了,可以轻松访问 Hana 数据库。安装 SAP Hana Client 之后,安装目录 hdbclient\hdbcli 下面有三个文件。按照 在python中连接SAP HANA | SAP Blogs 这篇文章的提示,解决 Python 连接 Hana 的驱动问题。

但经在网上搜索,我发现另外一个客户端驱动 PyHDB,貌似也是 SAP 发布的,可以在 Python 3.4 上使用。API 符合 PEP 249 规范。本文基于 PyHDB API。

安装
pip install pyhdb

获取 Connection 对象
需要 host, port, user, password 四个参数。注意端口是 3+实例编号+15,比如实例编号为 00,则端口为 30015。

import pyhdb

def get_connection():
    conn_obj = pyhdb.connect(
        host="192.168.1.100",
        port=30015,
        user="STONE",
        password="pwd"
    )

    return conn_obj

表查询
假设 Hana 数据库上有一 EMP_MASTER 的表,这个数据我是从 sample data 获得的。用 Hana Studio 预览数据如下:

def get_employees(conn):
    cursor = conn.cursor()
    cursor.execute('SELECT * FROM "STONE"."EMP_MASTER"')
    employees = cursor.fetchall()

    return employees

conn = get_connection()
employees = get_employees(conn)
for employee in employees:
    print (employee)


程序结果如下 (运行环境是 PyCharm):

参数化查询
def get_employees_male(conn):

    cursor = conn.cursor()
    cursor.execute('select * from "STONE"."EMP_MASTER" where "GENDER"=:1', ['Male'])
    return cursor.fetchall()

conn = get_connection()
employees = get_employees_male(conn)
for employee in employees:
    print (employee)

这样就获得了所有男性的数据。

CRUD 操作,可以参考 PyHDB,不再赘述。

References
SAP HANA and Python? Yes Sir 
在python中连接SAP HANA | SAP Blogs 
pyhdb 0.2.3 
PyHDB on GitHub
--------------------- 
作者:stone0823 
来源:CSDN 
原文:https://blog.csdn.net/stone0823/article/details/78705628 
版权声明:本文为博主原创文章,转载请附上博文链接!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值