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

Mehmet Şahin

Destek Ekibi
Destek Ekibi
Katılım
13 Ekim 2005
Mesajlar
1,398
Excel Vers. ve Dili
Excel 2010 - 2013 Türkçe - İngilizce
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
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,359
Excel Vers. ve Dili
Ofis 365 Türkçe
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?
 
Katılım
19 Ocak 2009
Mesajlar
45
Excel Vers. ve Dili
2013-Türkçe
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.
 
Katılım
19 Ocak 2009
Mesajlar
45
Excel Vers. ve Dili
2013-Türkçe
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

Son düzenleme:

Mehmet Şahin

Destek Ekibi
Destek Ekibi
Katılım
13 Ekim 2005
Mesajlar
1,398
Excel Vers. ve Dili
Excel 2010 - 2013 Türkçe - İngilizce
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.
 
Katılım
19 Ocak 2009
Mesajlar
45
Excel Vers. ve Dili
2013-Türkçe
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:
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
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:
Üst