Skip to main content

AccessTr.neT


Combobox ile DataGridview (Access Veritabanı) Sorgusu

Combobox ile DataGridview (Access Veritabanı) Sorgusu

#4
Daha açıklayıcı olması açısından;
[Resim: do.php?img=4248]
AdiSoyadi (Combobox1)
BabaAdi (Combobox2)

Combobox1 den Ali seçildiğinde 2 adet kayıt Datagridde gösteriliyor. Combobox2 den de Veli seçildiğinde tek kayıt göstersin istiyorum. Yani Datagridde sonuç; AdiSoyadı=Ali BabaAdi=Veli olsun..

Codelar bu şekli ile düzgün çalışıyor ancak Combobox2 ilave edilince nasıl bir değişiklik yada ilave gerekiyor.

'DataGridView nesnesine verileri aktar
Private Sub Listele(ByVal Sql As String)
Dim baglanti As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source='kayıt.mdb'")
Dim veriler As New DataTable("Kayitlar")
Dim adapter As New OleDbDataAdapter(SQL, baglanti)
adapter.Fill(veriler)
DataGridView1.DataSource = veriler
End Sub

Private Sub doldur()
Dim baglanti As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source='kayıt.mdb'")
baglanti.Open()
Dim komut As New OleDb.OleDbCommand("SELECT AdiSoyadi FROM Kayitlar GROUP BY AdiSoyadi", baglanti)
Dim oku As OleDb.OleDbDataReader
oku = komut.ExecuteReader()
ComboBox1.Items.Clear()
While oku.Read()
ComboBox1.Items.Add(oku("AdiSoyadi"))
End While
baglanti.Close()

End Sub

Private Sub ComboBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.TextChanged
If Me.ComboBox1.Text > "" Then

Dim Sql As New String("SELECT * FROM Kayitlar WHERE Kayitlar.AdiSoyadi='{0}'")
Sql = String.Format(sql, ComboBox1.SelectedItem)
Dim baglanti As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source='kayıt.mdb'")
Dim komutnesnesi As New OleDb.OleDbCommand(sql, baglanti)
Dim sonuc As Integer
baglanti.Open()
sonuc = komutnesnesi.ExecuteNonQuery()
If sonuc = 1 Then
MsgBox("Hatayı Kontrol Ediniz.", MsgBoxStyle.Exclamation, "Silme İşlemi")

End If
Listele(sql)
baglanti.Close()
Else
Dim Sql As New String("SELECT * FROM Kayitlar '")
Sql = String.Format(sql, ComboBox1.SelectedItem)
Dim baglanti As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source='kayıt.mdb'")
Dim komutnesnesi As New OleDb.OleDbCommand(sql, baglanti)
Dim sonuc As Integer
baglanti.Open()
sonuc = komutnesnesi.ExecuteNonQuery()
If sonuc = 1 Then
MsgBox("Hatayı Kontrol Ediniz.", MsgBoxStyle.Exclamation, "Silme İşlemi")

End If
Listele(sql)
baglanti.Close()
doldur()
End If
End Sub
Son Düzenleme: 31/03/2014, 20:56, Düzenleyen: chevy.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
Combobox ile DataGridview (Access Veritabanı) Sorgusu - Yazar: chevy - 31/03/2014, 20:55
Task