无法将excel / vba连接到SQL Oracle 11g

时间:2015-04-23 15:03:46

标签: sql oracle excel-vba oracle11g database-connection

我尝试将excel / vba(office 2010)宏连接到远程SQL Oracle 11g数据库。

我安装了Oracle OraDb11g_home1客户端。

数据库管理员为我提供了以下参数:

  • 用户:user205
  • 密码:password205
  • connectionstring:(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=128.128.128.20)(PORT=1527)))(CONNECT_DATA=(SERVICE_NAME=gestores)))

我的尝试:

1)

Sub GetData()
    Dim SQL_String As String
    Dim dbConnectStr As String
    Set con = New ADODB.Connection
    Set recset = New ADODB.Recordset
    Dim recordCount As Long
    dbConnectStr = "Provider=msdaora;Data Source=" & "gestores; User Id=user205" & "; Password=" & "password205"
    con.ConnectionString = dbConnectStr
    'con.Properties("Prompt") = adPromptAlways
    con.Open dbConnectStr 'ConnectionString
    MsgBox "Connected!!"
    SQL_String = "select * from USER_TABLES"
    recset.Open SQL_String, con
    recset.MoveLast
    recordCount = recset.recordCount
    recset.MoveFirst
    Do While Not recset.EOF = True
         'Have a loop here to go through all the fields
        recset.MoveNext
    Loop
    recset.Close
End Sub

这个消息告诉我这个消息:ORA-12154:TNS: could not resolve the connect identifier specified

2)

Sub OracleConnect()
    Dim rs As ADODB.Recordset, c As New ADODB.Connection, r As Range
    c.ConnectionString = "Driver={Microsoft ODBC for Oracle};CONNECTSTRING=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=128.128.128.20)(PORT=1527)))(CONNECT_DATA=(SERVICE_NAME=gestores))) ;UID=user205;PWD=password205;"
    c.Open
    rs.Open "select * from USER_TABLES", c, adOpenStatic, adLockReadOnly
    Set ws = ActiveWorkbook.Sheets("Test")
    Set r = ws.Range("A1")
    r.CopyFromRecordset rs
    rs.Close
    c.Close
End Sub

这个消息告诉我这个消息:[Microsoft][OCDB Driver for Oracle][Oracle]ORA-12541:TNS: No listener

0 个答案:

没有答案