在Netezza服务器上查找所有数据库名称

时间:2019-01-21 11:13:17

标签: excel vba odbc database-connection netezza

我想找出Netezza数据库服务器上所有数据库实例的名称。我正在使用以下代码:

Set objConn = CreateObject("ADODB.Connection")
Set objRec = CreateObject("ADODB.Recordset")

objConn.open "Driver={NetezzaSQL};servername=xx.xx.xx.xx;port=5480;database=_v_database;username=pankaj;password=xxx_333"
sqlQuery="select database from _v_database"
objRec.open sqlQuery, objConn

value = objRec.fields.item(0)
msgbox Value

我能够连接到各个DB,并且能够获取数据。但是,当我尝试运行上述代码时,出现“数据库_V_DATABASE不存在”错误。谁能帮助我找到特定服务器上的所有实例-不必严格限于VBA。

1 个答案:

答案 0 :(得分:0)

找到了解决方案-我在连接字符串中使用了database=SYSTEM而不是database=_v_database

Set objConn = CreateObject("ADODB.Connection")
Set objRec = CreateObject("ADODB.Recordset")

objConn.open "Driver={NetezzaSQL};servername=xx.xx.xx.xx;port=5480;database=SYSTEM;username=pankaj;password=xxx_333"
sqlQuery="select database from _v_database"
objRec.open sqlQuery, objConn

value = objRec.fields.item(0)
msgbox Value