1、安装hdbcli客户端
建议使用虚拟环境来本地化Python运行时环境。如果您选择使用虚拟环境,则可以在此处找到有关使用虚拟环境的指南。
创建一个虚拟环境以本地化依赖关系
python -m venv venv
激活虚拟环境:
source ./venv/bin/activate
激活虚拟环境后,您应该(venv)在bash shell中看到Linux用户的前面。例如:
wyge@ubuntu:~/tutorials/python$ source ./venv/bin/activate
(venv) wyge@ubuntu: ~/tutorials/python$
如使用的是Windows:
.\venv\Scripts\activate
PS C:\Users\513593\test\venv> .\Scripts\activate
(venv )PS C:\Users\513593\test\venv>
创建一个依赖文件并命名requirements.txt:
hdbcli
### add other dependencies below ###
安装依赖项:
pip install -r requirements.txt
依赖关系将保存在您的venv目录中。
安装客户端成功后,看到以下内容:
Installing collected packages: hdbcli
Successfully installed hdbcli-2.x.xxx
2、连接示例代码
#connect.py
#Import your dependencies
from hdbcli import dbapi
#Initialize your connection
conn = dbapi.connect(
address='<Database host>',
port='<Database port>',
user='<Database user>',
password='<Password>'
)
#If no errors, print connected
print('connected')
### rest of your code here ###
使用以下命令运行文件:
python3 connect.py
如果使用的连接成功会输出:
connected
将连接信息写在环境变量中的配置代码:
export HOST="<Database Host>"
export PORT="<Database Port>"
export DB_USER="<Database User>"
export DB_PW="<Password>"
from hdbcli import dbapi
import os
conn = dbapi.connect(
address=os.environ['HOST'],
port=os.environ['PORT'],
user=os.environ['DB_USER'],
password=os.environ['DB_PW']
)
print('connected')
#test select from dummy table
cursor = conn.cursor()
cursor.execute("SELECT * FROM DUMMY")
for result in cursor:
print(result)
参考文档:https://developers.sap.com/tutorials/hana-python-basic-connection.html