如何在pyhdb中指定数据库名称

import pyhdb

connect = pyhdb.connect(

    host="example.com",

    port=30015,

    user="user",

    password="secret"

)

从官方解释来看Pyhdb只给出了四个参数。如果没有参数数据库名称,我无法理解系统如何知道在这种情况下要连接到哪个数据库?


当我这样连接时,程序错误:“pyhdb.exceptions.DatabaseError:authentication failed”,看来我的密码错误,所以我让朋友使用JAVA(jdbc)带四个参数连接,也失败了,但是如果他添加数据库名称,它就起作用了!所以我的参数是正确的,问题是如何在 pyhdb 中指定数据库名称?


或者还有其他方式连接Hana,谢谢!


当年话下
浏览 68回答 1
1回答

Cats萌萌

查看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 dbapiconnection =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()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python