• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Excel'den Oracle Veritabanına Bağlantı Hatası

Katılım
19 Ocak 2009
Mesajlar
45
Excel Vers. ve Dili
2013-Türkçe
Merhaba,

Excel'den Oracle'a bağlantı kurarken ekteki hatayı alıyorum. Oracle Instant Client kurulu.

Ortam değişkenlerinde TNS_ADMIN yolu olarak C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN belirtilmiş durumda. tnsnames.ora dosyası içerisinde bağlanmak istediğim Oracle veritabanına ait TNS bilgisi mevcut ve buraya koyduğum bilgiler ile PL/SQL Developer kullanarak DB'ye bağlanabiliyorum ama Excel'den henüz bağlantı kurmaya giriş aşamasında ekteki hatayı alıyorum.

Yardımcı olabilir misiniz?
 

Ekli dosyalar

  • oracle_connection_failed.jpg
    oracle_connection_failed.jpg
    370.3 KB · Görüntüleme: 12
Merhaba,
ado ile bağlanabilirsiniz.

Kod:
Public Function baglan() As ADODB.Connection
Dim con As New ADODB.Connection
On Error GoTo hata
con.ConnectionString = "Driver={Microsoft ODBC for Oracle};" & _
                        "Server=XXXXX;" & _
                        "Uid=XXXXX;" & _
                        "Pwd=XXXXXXXX"
con.Open
Set baglan = con
Exit Function
hata:
'Mesajlar
Resume Next
End Function
 
Merhaba,

Windows 64 bit olduğunda Oracle bağlantısını sağlayamadım, ama 32 bit olduğunda sorun olmuyor.

Bu sorunu ben çözemedim. Sizin pc'niz 64 bit işletim sistemi mi?
 
Merhaba,

Windows 64 bit olduğunda Oracle bağlantısını sağlayamadım, ama 32 bit olduğunda sorun olmuyor.

Bu sorunu ben çözemedim. Sizin pc'niz 64 bit işletim sistemi mi?


Evet, Windows 7- 64 Bit işletim sistemi kullanıyorum.

PL/SQL Developer ile bağlanıp, Excel'de bu tür problem yaşamak garip geliyor bana.
 
Merhaba,
ado ile bağlanabilirsiniz.

Kod:
Public Function baglan() As ADODB.Connection
Dim con As New ADODB.Connection
On Error GoTo hata
con.ConnectionString = "Driver={Microsoft ODBC for Oracle};" & _
                        "Server=XXXXX;" & _
                        "Uid=XXXXX;" & _
                        "Pwd=XXXXXXXX"
con.Open
Set baglan = con
Exit Function
hata:
'Mesajlar
Resume Next
End Function

Merhaba,

Ekteki hatayı aldım, muhtemelen ADODB bir komponent ve benim bilgisayarımda kurulu değil. Araştırıp çözmeye çalışacağım fakat bu tür bir kod ile bağlantıyı sağladığımda GUI üzerinden tabloları görebilecek miyim? Yoksa tablolara ulaşabilmek için SQL yazmam mı gerekir? VBA bilgiminde girişin altı, kot olarak sayarsak beni biraz yoracaktır :hihoho:


Düzeltme:

Referanslardan Activex kütüphanesini eklemem gerekiyormuş. Onu ekledim fakat 2. bir hatayı aldım, aynı ilk ekte gönderdiğim gibi.
 

Ekli dosyalar

  • module_failed.jpg
    module_failed.jpg
    339.3 KB · Görüntüleme: 5
  • module_failed_2.jpg
    module_failed_2.jpg
    461.9 KB · Görüntüleme: 6
Son düzenleme:
Merhaba,
Araştırıp çözmeye çalışacağım fakat bu tür bir kod ile bağlantıyı sağladığımda GUI üzerinden tabloları görebilecek miyim? Yoksa tablolara ulaşabilmek için SQL yazmam mı gerekir? VBA bilgiminde girişin altı, kot olarak sayarsak beni biraz yoracaktır
Bu bağlantıda tabloları göremezsiniz ve herşeyi kod ile yapmanız gerekir. Diğer türlü (32 bit Win 7) excelden, Data/From other source/From data connection wizard/ açılan pencereden yüklü "OLE DB provider for Oracle" ile Other/Advanced seçeneğinde bulunan "Oracle Provider for OLE DB" ile ayrı ayrı bağlanabiliyorum.
 
4 saatlik uğraş sonucunda sorunu çözdüm, aslında basitmiş :) Sebebini hala anlayamamakla birlikte çözümü şu şekilde açıklayayım.

Sorun Tanımı:
Sağlayıcıyı başlatırken bir hata oluştuğundan sınama bağlantısı başarısız oldu. Oracle istemcisi ve ağ bileşenleri bulunamadı. Bu bileşenler Oracle Corportaion tarafından sağlanmaktadır ve Oracle 7.3.3 veya daha sonraki sürümlerin istemci yazılımını kurulumunun bir parçasıdır. Bu bileşenler yüklenmedikçi sağlayıcı çalışmaz.

İşletim Sistemi: Windows 7 x64
Office Sürümü: 2010
Uygulama: Excel
Instant Client 12.1 64 Bit yüklüydü, bunu 32 bite çevirmek sorunu halletti.
Ortam Değişkenlerin'deki PATH değişkeninde, InstantClient'ın yolunu teyit etmekte de fayda var.

Birçok yerde karşılaşılan bir sorun ve cevabını da bulamadım, o sebeple İngilizce olarak da yazmaya çalışayım, yabancılar da nasiplensin.

The Problem: While I try to connect Oracle Database in Excel, I got the error.

The Error: Oracle client and networking components were not found.
These components are supplied by Oracle Corporation and are part of the Oracle
Version 7.3.3 or later client software installation.
Provider is unable to function until these components are installed.

The Solution:
Operating System: Windows 7 64- Bit
Office Version: 2010
App: Excel
Method: I was using Oracle instant client for 64- bit. I replaced it with Oracle instant client 32-bit and the problem is solved. If you do this and still have a problem, control the "Environment Variables" and update the PATH variable with instant client's new location.

Şu an tabloları adlarını görüyorum ama içeriğini çekemiyorum, o da ayrı bir sorun :)

Düzeltme: Geriye kalan tek sorunumu da hallettim. Veritabanı şemasında yetki problemi yaşamışım, stackoverflow sağolsun, onu da çözdüm. İyi forumlar
 
Son düzenleme:
Merhabalar,
Bu konuda ben de sorunyaşıyorum fakat yazdığınız çözümden bir şey anlayamadım.
Yazdığım kodlar 32bit pclerde sorunsuz çalışırken 64 bit olan pclerde "Başlantı açık değil" hatası veriyor.
 
Son düzenleme:
Geri
Üst