Vba 多租户HANA数据库的ODBC连接字符串

Vba 多租户HANA数据库的ODBC连接字符串,vba,excel,connection-string,hana,Vba,Excel,Connection String,Hana,EXCEL VBA中可用于连接多租户HANA数据库的连接字符串是什么?目前我正在使用下面提到的字符串,但出现10709错误:- connectionstring = "Driver=HDBODBC;SERVERNODE=10.20.30.40:30015; DATABASENAME=ABCDE;CS=DBO" 要连接到您感兴趣的租户,您需要提供正确的端口号。 例如,如果整体实例编号为00,则为30045 整个端口分配方案在多租户数据库容器的2.9连接一章中有详细说明似乎只要指定SERVERNO

EXCEL VBA中可用于连接多租户HANA数据库的连接字符串是什么?目前我正在使用下面提到的字符串,但出现
10709错误
:-

connectionstring = "Driver=HDBODBC;SERVERNODE=10.20.30.40:30015; DATABASENAME=ABCDE;CS=DBO"

要连接到您感兴趣的租户,您需要提供正确的端口号。 例如,如果整体实例编号为00,则为30045


整个端口分配方案在多租户数据库容器的2.9连接一章中有详细说明

似乎只要指定SERVERNODE=:,就可以连接到租户数据库,即使我不提供数据库连接属性。这安全吗?如果我知道租户db端口号,为什么我也需要提供dbname?我知道您链接的指南中说数据库属性方法“…建议优先于指定租户数据库的特定端口”,我想知道的是,除了方便之外,是否有特定的原因支持一种方法而不是另一种方法。谢谢使用数据库名称而不是端口的好处是,它允许更改数据库的端口(例如,当租户数据库移动到使用端口已经有不同租户数据库的服务器时),而无需更改应用程序代码中连接的含义。实例号(驱动要使用的端口)是一个操作细节,对客户端没有任何意义——除了连接字符串。因此,避免使用端口有助于独立于数据库操作。这是有道理的。我发现了一个实例,当连接到运行在Azure VM上的HANA服务器时,数据库方法导致无法建立连接。当我试图在HANA Studio中仅提供主机名和数据库名时,我无法连接,但当我仅提供主机名:端口号(并省略数据库属性)时,我可以使用ODBC测试进行连接。有趣的是,如果我尝试从另一个Azure VM连接,我可以使用DATABASE connection属性进行连接。知道发生了什么吗?可能是系统DB/Nameserver的端口在此设置中被阻塞了。这本身可能是一个问题。