Python 如何在pyhdb中指定数据库名称
根据官方的解释 Pyhdb只提供四个参数。如果没有参数database name,我无法理解在这种情况下系统如何知道要连接到哪个数据库 当我以这种方式连接时,程序错误:“pyhdb.exceptions.DatabaseError:authentication failed”, 看起来我的密码错了,所以我让朋友用JAVA(jdbc)连接四个参数, 它也失败了,但如果他添加数据库名,它就成功了!所以我的参数是正确的,问题是如何在pyhdb中指定数据库名称Python 如何在pyhdb中指定数据库名称,python,hana,Python,Hana,根据官方的解释 Pyhdb只提供四个参数。如果没有参数database name,我无法理解在这种情况下系统如何知道要连接到哪个数据库 当我以这种方式连接时,程序错误:“pyhdb.exceptions.DatabaseError:authentication failed”, 看起来我的密码错了,所以我让朋友用JAVA(jdbc)连接四个参数, 它也失败了,但如果他添加数据库名,它就成功了!所以我的参数是正确的,问题是如何在pyhdb中指定数据库名称 或者有其他方式连接到Hana,谢谢 查看p
或者有其他方式连接到Hana,谢谢 查看pyhdb包的
\uuuu init\uuuuuuuupy
文件,可以看出DATABASENAME
在创建连接时不受支持:
import pyhdb
connect = pyhdb.connect(
host="example.com",
port=30015,
user="user",
password="secret"
)
好消息是,pyhdb无论如何都不应该用于连接HANA,因为它是旧的、不受支持的客户端库
如中所述,使用hdbcli
使用hdbcli使用数据库名根本没有问题:
[...]
def connect(host, port, user, password, autocommit=False):
conn = Connection(host, port, user, password, autocommit)
conn.connect()
return conn
[...]
这对你有帮助吗-
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()