Programlama ve Yazılım

C# Access Veritabanı Bağlantısı

C# ile Access Veritabanı kullanımına birlikte bakalım . Benimde projelerimde kullandığım veri tabanı olan Access ile küçük bir uygulama yaparak açıklayalım

C# Access Veritabanı Bağlantısı 1

Örnek bir Form üstünden gidelim

Formumuzda 5 adet textbox,1 adet datagridview, 3 adet buton ve 5 adet Label  bulunmaktadır.

Daha sonra “okul.accdb” isminde bir veritabanı dosyası oluşturarak projemizin “debug” klasörü içine atalım ve içine aşağıdaki şekilde “ogrenci” tablomuzu oluşturalım.

Geri kalanını Kodlar üzerinden açıklayalım

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.OleDb;  // Access bağlantısı kurabilmek için gerekli.
 
namespace veribaglanti1
{
    public partial class Form1 : Form
    {
        OleDbConnection con;
        OleDbDataAdapter da;
        OleDbCommand cmd;
        DataSet ds;
 
        public Form1()
        {
            InitializeComponent();
        }
        void doldur() // Veri tabanını görüntülemek için
        {
            con = new OleDbConnection("Provider=Microsoft.ACE.Oledb.12.0;Data Source=okul.accdb"); // Veri tabanı yolu
            da = new OleDbDataAdapter("SElect *from ogrenci", con); //Tablo ismi
            ds = new DataSet();
            con.Open();
            da.Fill(ds, "ogrenci");
            dataGridView1.DataSource = ds.Tables["ogrenci"]; // Tablo görüntülendi
            con.Close();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            doldur(); //alt program çağrıldı
        }
 
        private void button1_Click(object sender, EventArgs e)  // EKLE BUTONU
        {
            cmd = new OleDbCommand();
            con.Open();
            cmd.Connection = con;
            cmd.CommandText = "insert into ogrenci (ogr_no,ogr_ad,ogr_soyad,ogr_tel) values ('" + tbno.Text + "','" + tbad.Text + "','" + tbsoyad.Text + "','" + tbtel.Text + "')"; //Veri tabanına eklemek için önce tablo ismi sonra Textboxlar
            cmd.ExecuteNonQuery();
            con.Close();
            doldur();
        }
 
        private void button3_Click(object sender, EventArgs e)  //GÜNCELLE BUTONU
        {
            cmd = new OleDbCommand();
            con.Open();
            cmd.Connection = con;
            cmd.CommandText = "update ogrenci set ogr_ad='" + tbad.Text + "',ogr_soyad='" + tbsoyad.Text + "',ogr_tel='" + tbtel.Text + "' where ogr_no="+tbno.Text+""; //veritabanı adı = İçerik
            cmd.ExecuteNonQuery();
            con.Close();
            doldur();
        }
 
        private void button2_Click(object sender, EventArgs e)  //SİLME BUTONU
        {
            cmd = new OleDbCommand();
            con.Open();
            cmd.Connection = con;
            cmd.CommandText = "delete from ogrenci where ogr_no="+tbno.Text+""; // Silinecek İçerik İdsi where arama için
            cmd.ExecuteNonQuery();
            con.Close();
            doldur();
        }
 
      
        private void dataGridView1_CellEnter(object sender, DataGridViewCellEventArgs e) //DATAGRİDVİEW SATIRA TIKLANDIĞINDA TEXTBOXLARA AKTARMA
        {
            tbno.Text = dataGridView1.CurrentRow.Cells[0].Value.ToString();
            tbad.Text = dataGridView1.CurrentRow.Cells[1].Value.ToString();
            tbsoyad.Text = dataGridView1.CurrentRow.Cells[2].Value.ToString();
            tbtel.Text = dataGridView1.CurrentRow.Cells[3].Value.ToString();
        }
 
        private void textBox5_TextChanged(object sender, EventArgs e)  // ARAMA YAPMA
        {
            con = new OleDbConnection("Provider=Microsoft.ACE.Oledb.12.0;Data Source=okul.accdb");
            da = new OleDbDataAdapter("SElect *from ogrenci where ogr_ad like '"+textBox5.Text+"%'", con); // where neye göre arama yapılacak onu belirtir
            ds = new DataSet();
            con.Open();
            da.Fill(ds, "ogrenci");
            dataGridView1.DataSource = ds.Tables["ogrenci"];
            con.Close();
        }
                     
    }
}

Gerekli açıklamaları Kodların yanına yazarak açıklamaya çalıştım . Takıldığınız yerde yorum yazarak yardımcı olabiliriz.

Etiketler
Daha Fazla Göster

MeK

Pamukkale Üniversitesi Elektrik Elektronik Mühendisliği ni 2018 yılında bitirdim. 2018 yılında Yüksek Lisansa Karatekin Üniversitesi Elektrik Elektronik Mühendisliğine başladım. Programlamayı seviyorum Delphi, C# , C , PHP dillerine hakimim ARM ile uğraşıyorum bunların yanında web tasarım ve sunucu yönetimi ile hobi olarak uğraşıyorum. Sizlere Kodmek sayfamda hakim olduğum diller ve öğrenmek istediğim konularda yardımcı olmaya çalışacağım

Bir cevap yazın

Başa dön tuşu
Kapalı