ADO_TR
#1
Küçük bir Türkçe ADO örneği..
Hem Class modul hem de ADO i anlamak açısından fikir verebilir.

Module1:
Kod:
Private AD_TR As ADO_TR.KapaliBaglanti

Sub Test()
Dim X As Object

Set AD_TR = New ADO_TR.KapaliBaglanti

    With AD_TR
        .Ac MSJetOLEDB_4_0, "c:\aaa.mdb"
    Set X = .KayitSet("select * from [tablo1]", TR_Dinamik, TR_Serbest)
        [a1].CopyFromRecordset X
        .Kapat_KayitSet
        .Kapat_Baglanti
    End With
    
    Set AD_TR = Nothing
End Sub

Class Module : "KapaliBaglanti.cls"
Kod:
Public Enum Saglayici
    ExcelODBC = 0
    AccessODBC = 1
    MSJetOLEDB_4_0 = 2
End Enum

Public Enum Mantiksal
    Acik = 1
    Kapali = 0
End Enum

Public Enum Cursor_Tip
    TR_Ileri = 0
    TR_KilitCur = 1
    TR_Dinamik = 2
    TR_Sabit = 3
End Enum

Public Enum Kilit_Tip
    TR_Saltokunur = 0
    TR_Kilit = 2
    TR_Serbest = 3
    TR_Toplu = 4
End Enum

Private TR_ADO_Cn As Object
Private TR_ADO_Rs As Object

Public Function Baglanti_Durumu() As Mantiksal
    Baglanti_Durumu = Kapali
    If TR_ADO_Cn.State Then Baglanti_Durumu = Acik
End Function

Public Function Ac(Arac As Saglayici, _
            Veritabani As String, _
            Optional KullaniciAdi As String = "Admin", _
            Optional Sifre As String = Empty, _
            Optional Erisim_Ozelligi As String = Empty)
              
Select Case Arac
    Case 0
        TR_ADO_Cn.Open _
            "DRIVER={Microsoft Excel Driver (*.xls)};DBQ=" & Veritabani
    Case 1
        TR_ADO_Cn.Open _
            "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & _
                    Veritabani & ";Uid=" & KullaniciAdi & ";Pwd=" & Sifre
    Case 2
        TR_ADO_Cn.Open _
            "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Veritabani & _
            ";User Id=" & KullaniciAdi & ";Password=" & Sifre
End Select

End Function

Public Function KayitSet(SQL As String, _
                     Optional Cursor_Tipi As Cursor_Tip = 0, _
                     Optional Kilit_Tipi As Kilit_Tip = 1)

TR_ADO_Rs.Open SQL, TR_ADO_Cn, Cursor_Tipi, Kilit_Tipi

Set KayitSet = TR_ADO_Rs

End Function

Public Sub Kapat_KayitSet()
    TR_ADO_Rs.Close
End Sub

Public Function Kapat_Baglanti()
On Error Resume Next

    TR_ADO_Rs.Close
    
    On Error GoTo 0
    TR_ADO_Cn.Close
    
    Baglanti_Durumu
End Function

Private Sub Class_Initialize()
Class_Terminate
Set TR_ADO_Cn = CreateObject("ADODB.Connection")
Set TR_ADO_Rs = CreateObject("ADODB.Recordset")
End Sub

Private Sub Class_Terminate()
On Error Resume Next

Set TR_ADO_Cn = Nothing
Set TR_ADO_Cn = Nothing
End Sub


Eklenti Dosyaları
.rar   ADO_TR.rar (Boyut: 15,36 KB / İndirilme: 116)



  Alıntı
Bu mesajı beğenenler:


Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi