powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Не могу подключиться из Excel к Oracle
9 сообщений из 9, страница 1 из 1
Не могу подключиться из Excel к Oracle
    #34817720
sergey888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот код

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Dim cnnConn As ADODB.Connection
Dim rstRecordset As ADODB.Recordset
Dim cmdCommand As ADODB.Command

' Open the connection.
Set cnnConn = New ADODB.Connection
With cnnConn
    .ConnectionString = "ODBC;DRIVER={Microsoft ODBC for Oracle};UID=scott;PWD=tiger;SERVER=MYBASE_LOCALHOST.INTELLEX.RU;"
    .Open
End With

На open выдает ошибку

80004005
Data Source not found ....

Может кто приведет пример подключения к Oracle?
...
Рейтинг: 0 / 0
Не могу подключиться из Excel к Oracle
    #34817770
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Не могу подключиться из Excel к Oracle
    #34817834
sergey888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно работающий пример?
...
Рейтинг: 0 / 0
Не могу подключиться из Excel к Oracle
    #34817952
sergey888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Взял пример

Код: plaintext
1.
2.
3.
4.
5.
6.
Dim con As New ADODB.Connection
con.Provider = "OraOLEDB.Oracle"
con.ConnectionString = "FetchSize=200;CacheType=Memory;" & _
                       "OSAuthent=0;PLSQLRSet=1;Data Source=MyOraDb;" & _
                       "User ID=scott;Password=tiger;"
con.Open

при открытии выдает ошибку 3706
Провайдер не найден. возможно он не установлен
...
Рейтинг: 0 / 0
Не могу подключиться из Excel к Oracle
    #34821657
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
используется MS-драйвер:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
' http://support.microsoft.com/kb/246335
Option Explicit
Dim cnt As New ADODB.Connection 'ADO connection
Const strDB As String = "имя_сервиса_базы" 'ORACLE base

Function OpenConnection(UserID, UserPass)
    ' Open connection to the database
Dim cmd As ADODB.Command
    
    On Error GoTo err_OpenConnection
    
    OpenConnection =  0 
    
    'закрыть, если уже открыто
    CloseConnection
    
    'открыть
    With cnt
    .Provider = "MSDAORA"
    .ConnectionString = "Data Source=" & strDB & ";User ID=" & UserID & ";Password=" & UserPass
    .Open
    End With
    
    'установить cursor_sharing для запросов с текстовыми параметрами
           Set cmd = New ADODB.Command

           With cmd
             .ActiveConnection = cnt
             .CommandText = "alter session set cursor_sharing=FORCE"
             .CommandType = adCmdText
           End With
           
           cmd.Execute

           Set cmd = Nothing

    
    OpenConnection = - 1  'success

ext_OpenConnection:
Exit Function

err_OpenConnection:
MsgBox "ERROR:" & Err.Number & "-" & Err.Description, vbCritical, "ERR"
Resume ext_OpenConnection
End Function

Sub CloseConnection()
'close connection
On Error Resume Next
    cnt.Close
    Set cnt = Nothing
End Sub


еще можно через созданный DNS

через родной оракловый - см примеры из его поставки
...
Рейтинг: 0 / 0
Не могу подключиться из Excel к Oracle
    #34822013
sergey888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем за ответы. Нашел у себя в Оракловом каталоге



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
Sub EmpData()

Dim OraSession As Object
Dim OraDatabase As Object
Dim EmpDynaset As Object

Dim flds() As Object
Dim fldcount As Integer

 Set OraSession = CreateObject("OracleInProcServer.XOraSession")
 Set OraDatabase = OraSession.OpenDatabase("ExampleDb", "scott/tiger",  0 &)
 Set EmpDynaset = OraDatabase.CreateDynaset("select * from emp",  0 &)
 
 Range("A1:H15").Select
 Selection.ClearContents
 
  'Declare and create an object for each column.
  'This will reduce objects references and speed
  'up your application.
 fldcount = EmpDynaset.Fields.Count
 ReDim flds( 0  To fldcount -  1 )
 For Colnum =  0  To fldcount -  1 
  Set flds(Colnum) = EmpDynaset.Fields(Colnum)
 Next

 
 'Insert Column Headings
 For Colnum =  0  To EmpDynaset.Fields.Count -  1 
  ActiveSheet.Cells( 1 , Colnum +  1 ) = flds(Colnum).Name
 Next
 
 'Display Data
 For Rownum =  2  To EmpDynaset.RecordCount +  1 
  For Colnum =  0  To fldcount -  1 
   ActiveSheet.Cells(Rownum, Colnum +  1 ) = flds(Colnum).Value
  Next
  EmpDynaset.DbMoveNext
 Next
 
Range("A1:A1").Select
 
End Sub

Sub ClearData()
 Range("A1:H15").Select
 Selection.ClearContents
 Range("A1:A1").Select
End Sub
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Не могу подключиться из Excel к Oracle
    #37836279
IgorD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexus12,
Подскажите, пожалуйста, чего не хватает. На машине установлен Oracle Client Base 10g. В Excel использую Provider = "MSDAORA". Появляется ошибка

"Не найден клиент Oracle и сетевые компоненты. Компоненты предоставляются корпорацией Oracle и входят в клиентское программное обеспечение Oracle версии 7.3.3 или более поздней.
Невозможно использовать данного поставщика, пока не будут установлены эти компоненты "


Спасибо.
...
Рейтинг: 0 / 0
Не могу подключиться из Excel к Oracle
    #37836501
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IgorD,
скорее всего клиент установлен некорректно. Переустановить - не так уж долго.
...
Рейтинг: 0 / 0
Не могу подключиться из Excel к Oracle
    #37836533
IgorD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скукотища,
Клиент я "собирал" вручную, на базе instantclient-basic-win32-10.2.0.5 . Там только тот минимум, который необходим для работы нашего программного обеспечения. С проблемой разобрался. Не хватало файла ociw32.dll
Теперь все работает.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Не могу подключиться из Excel к Oracle
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]