数据库地址:10.122.5.104
     用户名和密码:CLAIMOPT/OPTMIALC
     服务名:sbpDim adocnDiss As New ADODB.Connection
adocnDiss.Open "Provider=MSDAORA.1;Password=OPTMIALC;User ID=CLAIMOPT;Data Source=sbp;Persist Security Info=False"用open打开连接时提示 ORA-12154 :TNS :无法解析指定的连接标识符而SQL-PLUS可以连上,在ODBC里建立DNS也可以连上,问题出在哪呀?

解决方案 »

  1.   

    试试:
    "Provider=ORAOLEDB.Oracle;Data Source=xxx;user id=xx;password=xx"
      

  2.   

    把Persist Security Info=False改成Persist Security Info=True試試
    建議加入CursorLocation = adUseClient
      

  3.   

    Public OraSession As Object          'ORACLE OLE变量
    Public OraDatabase As Object        '业务属性数据库(ORACLE8I)
    Public OraDynaset As Object         '全局记录集变量Set OraSession = CreateObject("OracleInProcServer.XOraSession")
    Set OraDatabase = OraSession.DbOpenDatabase("sbp", "CLAIMOPT/OPTMIALC", 4&)******************
    Set OraDynaset = OraDatabase.CreateDynaset("select * from table ", 4&)  '4:只读;0:修改
      

  4.   

    lt1009() 
    ActiveX部件不能创建对象!
    ----------------------------
    On Error GoTo err1:
        Me.Combo1.Text = ""
        
        Dim OraSession As Object          'ORACLE OLE变量
        Dim OraDatabase As Object        '业务属性数据库(ORACLE8I)
        Dim OraDynaset As Object         '全局记录集变量
        
        Set OraSession = CreateObject("OracleInProcServer.XOraSession")
        Set OraDatabase = OraSession.DbOpenDatabase("sbp", "CLAIMOPT/OPTMIALC", 4&)
        
        '******************
        Set OraDynaset = OraDatabase.CreateDynaset("select afa052 as dwname from fa25 order by afa052 ", 4&)  '4:只读;0:修改
        
        Do While Not OraDynaset.EOF
            Me.Combo1.AddItem OraDynaset!dwname & ""
            OraDynaset.MoveNext
        Loop
        
        If Me.Combo1.ListCount > 1 Then Me.Combo1.Text = Me.Combo1.List(0)
        
        
        Set OraDynaset = Nothing
        Set OraDatabase = Nothing
        Set OraSession = Nothing
        
        Exit Sub
    err1:
        If Err.Number <> 0 Then MsgBox Err.Description, vbInformation, Err.Number
            
        Set OraDynaset = Nothing
        Set OraDatabase = Nothing
        Set OraSession = Nothing