Bu örnekte, bir erişim veritabanı bağlantısı kullanarak kayıt eklemek için C # kullanacağız. Daha önceki veritabanı bağlantı örneklerinden farklı olarak, bu zamana kayıt ekleyeceğimiz tablodaki yinelenen kayıtları önleyeceğiz.

Bu yüzden tekrarlamak istemediğimiz bir alan varsa (Ör: TC Kimlik Numarası), MessageBox ile bir uyarı yayınlayacağız. Tekrarlayan bir kayıt var mı? Yok mu Tekrarlanan kayıt yoksa, veritabanını kontrol ederiz.

Access veritabanımızın adı vtogrenc

Tablo ismi Öğrenci

Access veritabanı:

Form Tasarımı:

C # Kodları:

Sistem kullanımı;
System.Collections.Generic kullanarak;
System.ComponentModel kullanarak;
System.Data kullanarak;
System.Drawing kullanarak;
System.Linq kullanarak;
System.Text kullanarak;
System.Threading.Tasks kullanarak;
System.Windows.Forms kullanarak;
System.Data.OleDb kullanarak;

ad alanı tc_control
{
genel kısmi sınıf Form1: Form
{
OleDbConnection bağlantısı;
OleDbCommand komutu;
OleDbDataAdapter;

genel Form1 ()
{
Bileşeni Başlatma ();
}

geçersiz KisListele ()
{
connection = new OleDbConnection ("Sağlayıcı = Microsoft.ACE.OleDb.12.0; Veri Kaynağı = vtogrenci.accdb");
baglanti.op ();
da = new OleDbDataAdapter ("Seç * Öğrenciden", bağlantı);
DataTable tablosu = yeni DataTable ();
doldurma (tablo);
dataGridView1.DataSource = tablo;
baglanti.clos A ();


}
özel geçersiz Form1_Load (nesne gönderen, EventArgs e)
{
kisilistel A ();
}

public int VarMi (aranan dize)
{
int sonuç;
connection = new OleDbConnection ("Sağlayıcı = Microsoft.ACE.OleDb.12.0; Veri Kaynağı = vtogrenci.accdb");
string query = "WHERE öğrencisinden COUNT (tc) seçin tc = & # 39;" + aranan + "& # 39;";
command = new OleDbCommand (sorgu, bağlantı);
baglanti.op ();

result = Convert.ToInt32 (komut.executesc Show ());

baglanti.clos A ();
sonuç döndürmek;

}

private void button1_Click (nesne gönderen, EventArgs e)
{


if (VarMi (txtTc.Text)! = 0)
{
MessageBox.Show ("daha önce bu TC Numarasına kayıtlı");
}
Başka
{
string query = "Öğrenci (tc, adı, soyadı) değerlerine ekle (@ tc, @ adı, @ soyadı)";
command = new OleDbCommand (sorgu, bağlantı);
command.Parameters.AddWithValue ("@ tc", Convert.ToInt32 (txtTc.Text));
command.Parameters.AddWithValue ("@name", txtAd.Text);
command.Parameters.AddWithValue ("@ soyadı", txtSurnameNext);
baglanti.op ();
komut.executenonquery ();
baglanti.clos A ();
kisilistel A ();
}

}
}
}