import pyhdbconnect = pyhdb.connect( host="example.com", port=30015, user="user", password="secret")從官方解釋來看Pyhdb只給出了四個參數。如果沒有參數數據庫名稱,我無法理解系統如何知道在這種情況下要連接到哪個數據庫?當我這樣連接時,程序錯誤:“pyhdb.exceptions.DatabaseError:authentication failed”,看來我的密碼錯誤,所以我讓朋友使用JAVA(jdbc)帶四個參數連接,也失敗了,但是如果他添加數據庫名稱,它就起作用了!所以我的參數是正確的,問題是如何在 pyhdb 中指定數據庫名稱?或者還有其他方式連接Hana,謝謝!
1 回答

Cats萌萌
TA貢獻1805條經驗 獲得超9個贊
查看pyhdb__init__.py包的文件顯示創建連接時不支持:DATABASENAME
[...]
def connect(host, port, user, password, autocommit=False):
conn = Connection(host, port, user, password, autocommit)
conn.connect()
return conn
[...]
好消息是pyhdb不應該用來連接到 HANA,因為它是舊的且不受支持的客戶端庫。
請按照文檔中的說明使用hdbcli。
通過hdbcli,使用以下命令完全沒有問題DATABASENAME:
from hdbcli import dbapi
connection =dbapi.connect(address="hxehost", port=39013, databasename="HXE", user="xxxxx", password="xxxxx")
cursor = connection.cursor()
cursor.execute("SELECT 'Hello, Python world' FROM DUMMY")
print(cursor.fetchone())
connection.close()
添加回答
舉報
0/150
提交
取消