2016-03-23 76 views
0

我的程序是用VB.Net編寫的,並通過ODBC連接到DB2。對於其他ODBC連接,我們可以通過註冊表獲取主機IP地址。獲取DB2 ODBC的系統IP和端口DSN

HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ ODBC \ ODBC.INI \

DB2似乎並未有任何信息,所以我想知道如果有一種方式來獲得通過ODBC連接的IP。

我現在也明白有一種方法可以通過運行list db directory然後list node directory通過DB2命令行處理器獲取此信息,但我想知道是否有更簡單的方法通過ODBC或者可能是某些DB2 SQL命令...感謝您的幫助!

+0

什麼DB2版本/平臺? – mustaccio

回答

0

您可以通過下面的SQL語句獲取DB2服務器的主機名:

select host_name, adapter_name from TABLE(ENV_GET_NETWORK_RESOURCES()) 

如果你知道什麼ADAPTER_NAME,比如,eth0,eth1的,......,ethN的需要,您可以添加謂語

WHERE adapter_name like '<adapter>%' 

一個例子是:

db2 "select substr(host_name,1,20) as host, substr(adapter_name,1,10) as adapter from TABLE(ENV_GET_NETWORK_RESOURCES())" 

HOST     ADAPTER 
-------------------- ---------- 
dbms     eth0  
dbms     lo   

    2 record(s) selected.