Access Veritabanına Kayıt ve Kayıt Girişi Kontrolü
Merhaba arkadaşlar. Bu makalemizde Access veritabanına kayıt girişi yaparken girilen verilerin veritabanımızda kayıtlı olup olmadığını kontrolünü yapacağız. Yapılan kontrol neticesinde girilen veriler veritabanımızda kayıtlı ise,yeni kayıt girişi yapılmayacak. (Şekil 1-2)
Yine bu makalemizde Insert into metoduyla yeni kayıtları veritabanımıza gireceğiz. (Şekil 3)
Kayıt sorgulamalarını girilen ad ve soyada göre yapacağız. Son olarak ta txtAd_TextChanged a yazılan kodla txtAd.Text e girilen ad veritabanında kayıtlı ise ona ait diğer verileri (Öğrenim, Birim vb…) TextBox lara çekeceğiz.
Form1.vb
Imports System.Data.OleDb
Public Class Form1
Dim baglan As OleDb.OleDbConnection = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=bilgi.mdb;")
Dim komut As New OleDb.OleDbCommand
Dim dr As OleDb.OleDbDataReader
Dim sorgu As String
Private Sub btnKaydet_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKaydet.Click
baglan.Open()
sorgu = "Select * From personel Where Ad='" & txtAd.Text & "' and Soyad='" & txtSoyad.Text & "' "
komut = New OleDb.OleDbCommand(sorgu, baglan)
dr = komut.ExecuteReader()
While dr.Read
'girilen kayıt girişi veritabanında kontrol ediliyor.
'aynı kayıt girişi veritabanında varsa, kaydımızın gerçekleşmediği
'mesajı veriyoruz.
MsgBox(String.Concat(txtAd.Text, txtSoyad.Text) & " kaydı daha önce yapılmıştır.")
baglan.Close()
Exit Sub
End While
baglan.Close()
baglan.Open()
'veritabanına insert into metoduyla yeni kayıt girişi
'yapıyoruz.
sorgu = "Insert into personel(Ad,Soyad,Ogrenim,Birim,Adres) values('" & txtAd.Text & "','" & txtSoyad.Text & "', '" & txtOgrenim.Text & "', '" & txtBirim.Text & "', '" & txtAdres.Text & "')"
komut = New OleDb.OleDbCommand(sorgu, baglan)
komut.ExecuteNonQuery()
MsgBox(String.Concat(txtAd.Text, txtSoyad.Text) & " kaydı yapıldı.")
baglan.Close()
End Sub
Private Sub txtAd_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAd.TextChanged
'txtAd.Text e girilen ada göre veritabanındaki verileri
'diğer textboxlara getireceğiz.
baglan.Open()
sorgu = "Select * From personel Where Ad='" & txtAd.Text & "' "
komut = New OleDb.OleDbCommand(sorgu, baglan)
dr = komut.ExecuteReader()
txtSoyad.Text = ""
txtOgrenim.Text = ""
txtBirim.Text = ""
txtAdres.Text = ""
While dr.Read
'eğer txtAd.Text e girilen değer veritabanındaki
'değere eşitse döngüye girip, bilgiler txtboxlara
'alınıyor.
txtSoyad.Text = dr.Item("Ad")
txtSoyad.Text = dr.Item("Soyad")
txtOgrenim.Text = dr.Item("Ogrenim")
txtBirim.Text = dr.Item("Birim")
txtAdres.Text = dr.Item("Adres")
End While
baglan.Close()
End Sub
End Class
Bir makalenin daha sonuna geldik. Bir sonraki makalede görüşmek dileğiyle. Hoşçakalın. Bahadır ŞAHİN