• DİKKAT

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

Şifreli Access veritabanına bağlantı

  • Konbuyu başlatan Konbuyu başlatan unfors
  • Başlangıç tarihi Başlangıç tarihi
Katılım
30 Ekim 2010
Mesajlar
108
Excel Vers. ve Dili
2007 Türkçe
Kod:
tt = AYARLAR.TextBox2.Value
Dim con As Object, rs As Object
Set con = CreateObject("adodb.connection")
con.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=" & tt & ";"

http://dosya.co/vboyyi88ra2w/XED_FORM.accdb.html
Access dosyasının şifresi = 123456

yukarıdaki kod ile dosyaya nasıl bağlanabilirim. Birçok kod denedim ama devamlı şifre yanlış uyarısı alıyorum.
 
Örnek kod;

Kod:
    Set AdoCN = CreateObject("ADODB.Connection")
    Dosya_Yolu = "C:\Shared\DEPO\2017\STOKLAR.mdb"
    AdoCN.Provider = "Microsoft.Jet.OLEDB.4.0"
    AdoCN.Properties("Jet OLEDB:Database Password") = "123"
    AdoCN.ConnectionString = Dosya_Yolu
    AdoCN.Open


Provider olarak "Microsoft.ACE.OLEDB.12.0" da kullanabilirsiniz ....


.
 
Son düzenleme:
Geçersiz parola hatası veriyor. runtime error 2147217843
 
Office 2010 ile denediğimde ben de aynı hatayı aldım......

Bilgisayarımda Access olmadığı için deneme şansım yok, eğer sizde varsa Access dosyasında File->Options->Client Settings->Advanced bölümünde "use legacy encryption" kısmını işaretleyip, mevcut şifrenizi silip yeniden şifre belirlemeyi dener misiniz?

.
 
Son düzenleme:
Haluk Bey; dediğiniz gibi eski şifrelemeyi işaretleyerek yeniden şifrelendiğinde çalışıyor.
 
Ayarın nerede olduğunu da ben de resim ile göstereyim.

WqQP12.png
 

Ekli dosyalar

  • 1548178181820.png
    1548178181820.png
    25.6 KB · Görüntüleme: 13
Son düzenleme:
Veysel Beyin 7 No'lu mesajına eklediği dosyayı kullanarak, (Zeki Beyin işaret ettiği yerdeki söz konusu düzenlemenin yapıldığı dosya ) aşağıdaki kodlarla dosyadaki tablolara, alanlara ve alanlardaki verilere Office2010 ile erişilebiliyor...

Kod:
Sub Test()
    'Haluk - 22/01/2019
    'E-Posta: sa4truss@gmail.com
    '
    Dim adoCn As Object, rsTables As Object, rsFields As Object, RS As Object
    Dim myArr As Variant, i As Long, countRecords As Long
    Dim tablesList As String, fieldsList As String, myList As String
    Const adSchemaTables = 20
    Const adOpenKeyset = 1
    
    Dosya_Yolu = ThisWorkbook.Path & Application.PathSeparator & "XED_FORM1.accdb"
    
    If Dir(Dosya_Yolu) = Empty Then
        MsgBox Dosya_Yolu & " bulunamadı!"
        GoTo SafeExit:
    End If
    
    Set adoCn = CreateObject("ADODB.Connection")
    adoCn.Provider = "Microsoft.ACE.OLEDB.12.0"
    adoCn.Properties("Jet OLEDB:Database Password") = "123456"
    adoCn.ConnectionString = Dosya_Yolu
    adoCn.Open
    
    If adoCn.State = 1 Then
        MsgBox "ADO bağlantısı kuruldu"
    Else
        GoTo SafeExit:
    End If
    
    Set rsTables = adoCn.OpenSchema(adSchemaTables)
    
    i = 1
    With rsTables
        Do While Not .EOF
            If .Fields("TABLE_TYPE") = "TABLE" Then
                tablesList = tablesList & i & " - " & .Fields("TABLE_NAME") & vbCrLf
                i = i + 1
            End If
            .MoveNext
        Loop
    End With
    
    MsgBox "Veri tabanındaki tablolar:" & vbCrLf & vbCrLf & tablesList
    
    strSQL = "SELECT * FROM [URUN_GRUBU]"
    
    Set rsFields = adoCn.Execute(strSQL)
    
    For i = 0 To rsFields.Fields.Count - 1
        fieldsList = fieldsList & (i + 1) & " - " & rsFields.Fields(i).Name & vbCrLf
    Next
    
    MsgBox "'URUN_GRUBU' tablosundaki alanlar:" & vbCrLf & vbCrLf & fieldsList
    
    strSQL = "SELECT [GRUP_ADI] FROM [URUN_GRUBU]"
    
    Set RS = CreateObject("ADODB.Recordset")
    
    RS.Open strSQL, adoCn, adOpenKeyset
    
    countRecords = RS.RecordCount
    
    For i = 0 To (RS.RecordCount - 1)
        myList = myList & RS(0) & vbCrLf
        RS.MoveNext
    Next
    
    MsgBox "'URUN_GRUBU' tablosunda 'GRUP_ADI' alanındaki veriler:" & vbCrLf & vbCrLf & myList
    
SafeExit:
    Set RS = Nothing
    Set rsFields = Nothing
    Set rsTables = Nothing
    Set adoCn = Nothing
End Sub


.
 
Son düzenleme:
Ekli Excel dosyasında yazılan kodlarla; Veysel Beyin 7. mesajındaki şifreli Access dosyasındaki tüm tablolar, içindeki verilerle birlikte sayfalara listelenmektedir. Ekli Excel dosyası ve söz konusu Access dosyası aynı klasörde bulunmalıdır.

Benim gibi, bilgisayarında Access bulunmayanların işine yarar ....

Not: Dosya revize edildi. (Saat- 23:51)

.
 

Ekli dosyalar

Son düzenleme:
Geri
Üst