Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > Diğer Yazılımlar > WEB Tasarım&Programlama > PHP & MySql
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 09-03-2015, 00:02   #1
seyhan6591
 
Giriş: 11/04/2009
Şehir: Bursa
Mesaj: 43
Excel Vers. ve Dili:
2010 TR
Varsayılan MySQL bağlanma süresi ve bağlı kalma Yardım

MySQL veri tabanına VBA ile bağlantı kuruyorum. Bağlanma süresi uzun olduğundan, dosya açılırken bir kez bağlantı kuruyorum, sonra diğer işlemler o bağlantı üzerinden yürüyor, ancak bir yerde takıldım.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Global oConn As ADODB.Connection
Global rs As ADODB.Recordset
Global sorguizin As String
İle genel tanımlama yapıyorum.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Set rs = New ADODB.Recordset
Set oConn = New ADODB.Connection
oConn.Open "DRIVER={MySQL ODBC 3.51 Driver};" & _
"SERVER=xx.xxx.x.xxx;" & _
"PORT=xxxx;" & _
"DATABASE=databaseeee;" & _
"USER=roottttt;" & _
"PASSWORD=123456;" & _
"Option=3"
sorguizin = "belli mysql sorguları"
rs.Open sorguizin, oConn, adOpenStatic
Kodları ile Workbook open kısmında bağlantı kuruyorum.

Bu noktadan sonra INSERT yaptığımda bağlantıda sorun yokken (işlem 1sn'nin altında sürüyor), SELECT ile veri çekmeye çalıştığımda yeniden bağlantı istiyor. Neden olabilir?

Daha ayrıntılı açıklamam gerekirse; Aşağıdaki SELECT sorgusu, Workbook open'de açılan bağlantıyı kullanıyor (işlem kısa sürüyor), ancak ikinci defa çalıştırdığımda yine bağlantı istiyor.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub SORGUU()
Worksheets("SZ").Cells.ClearContents
TCno = "47704881421"
sorguizin = "SELECT * FROM kayitlar WHERE TC_KimlikNo=" & TCno & " AND Kullanici='Usserr'"
On Error GoTo baglan:
rs.Open sorguizin, oConn, adOpenStatic
GoTo atla:
baglan:
Call ConnectSQL
rs.Open sorguizin, oConn, adOpenStatic
atla:
oConn.Execute sorguizin
Dim myArray() 'bu satırdan şüpheleniyorum, ancak çözemedim
myArray = rs.GetRows()
sutun = UBound(myArray, 1)
satir = UBound(myArray, 2)
For k = 0 To sutun ' Using For loop data are displayed
Worksheets("SZ").Range("A1").Offset(0, k).Value = rs.Fields(k).Name
For R = 0 To satir
Worksheets("SZ").Range("A1").Offset(R + 1, k).Value = myArray(k, R)
Next
Next
son:
End Sub
Teşekkürler.

Bu mesaj en son " 09-03-2015 " tarihinde saat 00:09 itibariyle seyhan6591 tarafından düzenlenmiştir....
seyhan6591 Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 10:41


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım - Tarot Falı - invest in turkey - Lingerie - Dyeing Machine - Karton Bardak- Çorlu Özel Eğitim- Site Yönetimi- Led Aydınlatma- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Kırklareli- Pronet Çerkezköy- Pronet Çorlu- Pronet Lüleburgaz- Pronet Keşan- Çorlu Araç Takip- Çorlu Su Arıtma- Boru Profil- Gebze Emlak- Beylikdüzü Temizlik- İstanbul Burun Estetiği- Bakır Sülfat- Rampa- Rotary- Çorlu İnternet Sitesi- youngblood- Çorlu Palet- Çerkezköy Palet- Çorlu Prefabrik- Çorlu Sürücü Kursu- Çorlu Sandviç Panel- Şişli Avukat- Korona Test Kalemi- Çorlu Vinç- Çorlu Pimapen Tamiri-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden