我使用此连接字符串模式与ADODB
Set oConn = New ADODB.Connection
oConn.ConnectionString = "User ID=USERNAME;Password=PW;Data Source=xxxxxxx.db.yyyy.com:port;Provider=OraOLEDB.Oracle; "
oConn.ConnectionTimeout = 30
oConn.Open
rs.CursorType = adOpenForwardOnly
当我打开连接时,我会收到运行时错误
ORA-12504:TNS:听众未在CONNECT_DATA中获得SERVICE_NAME
我也尝试过使用此连接字符串
"ODBC;DRIVER={Oracle in OraClient11g_home2};" & _
"DBQ=" & inputHost & ";UID=" & inputUser & ";PWD=" & inputPassword & ";" & _
"HOST=" & inputHost & ";PORT=1521;DB=" & inputHost & ";" & _
"DefaultIsolationLevel=READUNCOMMITTED"
我得到了运行时错误
[Microsoft] [ODBC驱动程序管理器]未找到数据源名称未指定默认驱动程序
答案 0 :(得分:1)
我认为Data Source=xxxxxxx.db.yyyy.com:port
是问题所在。您应该提供文件tnsnames.ora
中定义的TNS别名,而不是" ServerName.Domain:Port"。
我不知道OLEDB提供程序是否支持Easy Connect命名方法。您是否在NAMES.DIRECTORY_PATH=(tnsnames, ezconnect)
文件中指定了sqlnet.ora
?