C# Access Veritabanı ile Kitap Kayıt Programı | Kazım ŞİMŞEK

C# Access Veritabanı ile Kitap Kayıt Programı

Herhangi bir kitabevi kırtasiye yada kütüphanede bulunan kitapların kayıt altına alınması ve takibinin yapılması amacıyla hazırlanmış access veri tabanını kullanan bir program.

Elimizde bulunan tüm kitapların kayıtları access veri tabanında yapılmaktadır. Veri tabanı üzerinde kayıt ekleme, kayıt silme, kayıt listeleme, kayıt arama ve kayıt güncelleme işlemleri yapılmaktadır.

Öncelikle veri tabanında bulunan tablonun alanlarını ve veri türlerini yazalım.

kitap-tablo

Yukarıdaki alanlardan ve veri türlerinde oluşan tabloyu oluşturduktan sonra form üzerinde istediğimiz gibi tasarım yapıp kodlamaya geçebiliriz.

Programla neler yapılabilir:

  1. Yeni kayıt ekleme: Yeni bir müşteri geldiğinde müşteri bilgilerini yazarak tabloya yeni bir kayıt ekleyebiliriz.
  2. Kayıt listeleme: Tabloda bulunan tüm kayıtları ekranda bir datagrid üzerinde listeleyebiliriz.
  3. Kayıt Arama: İstediğimiz herhangi bir kritere göre kayıt arama yaptırabiliriz. Aranan kayıt bulunduğunda tüm bilgileri ekrana getirilir.
  4. Kayıt Güncelleme: Tabloda bulunan herhangi bir kaydı bularak kayıt üzerinde istediğimiz gibi güncelleme işlemi yapabiliriz.
  5. Kayıt Silme: Veri tabanından istenilen bir kayıt bulunarak veri tabanından silme işlemi yapılabilir.

Programın ekran görüntüsü:

kitap-takip

Programın C# kodları:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb; //Veritabanı bağlantı kütüphanesi

namespace kitap
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();     

        }
        //Veri Tabanı Değişkenlerini Tanımlama Bölümü

        OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=kitap.accdb");
        OleDbCommand komut = new OleDbCommand();
        OleDbDataAdapter adaptor = new OleDbDataAdapter();

        DataSet tasima = new DataSet();
        string resimo;

        //DataGridWiev de kayıtları listeleme bölümü
        void listele()
        {
            baglanti.Open();
            OleDbDataAdapter adaptor = new OleDbDataAdapter("Select * from kitap", baglanti);
            adaptor.Fill(tasima, "kitap");
            dataGridView1.DataSource = tasima.Tables["kitap"];
            adaptor.Dispose();
            baglanti.Close();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            listele();
        }
        // resim ekleme butonu
        private void button6_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                pictureBox1.ImageLocation = openFileDialog1.FileName;
                k_resim.Text = openFileDialog1.FileName;
            }
            // "\" karakterinin ascii kodunu alma bölümü
            int s = 92;
            string harf = ((char)s).ToString();
            // Resmin adresinin tersten yazdırama bölümü
            string yazi = k_resim.Text; string metin = "";
            int yaziuzunlugu = yazi.Length;
            for (int i = yaziuzunlugu; i > 0; i--)
            {
                if (yazi.Substring(i - 1, 1) == harf)
                {
                    break;
                }
                metin = metin + (yazi.Substring(i - 1, 1));
            }
            // Bulunan resim adını düzden yazdırma bölümü
            int uzunluk = metin.Length; string kelime = "";
            for (int a = uzunluk; a > 0; a--)
            {
                kelime = kelime + (metin.Substring(a - 1, 1));
            }
            //resim adını k_resim kutusuna yazdırma bölümü
            k_resim.Text = "resim/" + kelime;
            resimo = k_resim.Text;
         }
        // kayıt ekleme butonu
        private void button4_Click(object sender, EventArgs e)
        {
            k_resim.Text = pictureBox1.ImageLocation;
            if ( k_adi.Text != "" && k_yazari.Text != "" && k_isbn.Text != "" &&k_yayinevi.Text != "" && k_basim_yili.Text != "" && k_baski.Text != "" && k_sayfa_sayisi.Text != "" && k_konu.Text != "" && k_turu.Text != "" && k_fiyati.Text != "" && k_resim.Text != "")
            {
                komut.Connection = baglanti;
                komut.CommandText = "Insert Into kitap(k_adi,k_yazari,k_isbn,k_yayinevi,k_basim_yili,k_baski,k_sayfa_sayisi,k_konu,k_turu,k_fiyati,k_resim) Values ('" + k_adi.Text + "','" + k_yazari.Text + "','" + k_isbn.Text + "','" + k_yayinevi.Text +"','" + k_basim_yili.Text + "','" + k_baski.Text + "','" + k_sayfa_sayisi.Text + "','" + k_konu.Text + "','" + k_turu.Text + "','" + k_fiyati.Text + "','"  + resimo + "')";
                baglanti.Open();
                komut.ExecuteNonQuery();
                komut.Dispose();
                baglanti.Close();
                MessageBox.Show("Kayıt Tamamlandı!");
                tasima.Clear();
                listele();
                }
                else
                {
                MessageBox.Show("Boş alan geçmeyiniz!");
                
            }

        }
        // yeni kayıt ekleme
        private void button3_Click(object sender, EventArgs e)
        {
            k_id.Text = "";
            k_adi.Text = "";
            k_yazari.Text = "";
            k_isbn.Text = "";
            k_yayinevi.Text = "";
            k_basim_yili.Text = "";
            k_baski.Text = "";
            k_sayfa_sayisi.Text= "";
            k_konu.Text = "";
            k_turu.Text = "";
            k_fiyati.Text = "";
            k_resim.Text = "";
            pictureBox1.ImageLocation = "";

        }
        //Kayıt Silme Bölümü
        private void button1_Click(object sender, EventArgs e)
        {
            DialogResult c;
            c = MessageBox.Show("Silmek istediğinizden emin misiniz?", "Uyarı!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
            if (c == DialogResult.Yes)
            {
                baglanti.Open();
                komut.Connection = baglanti;
                komut.CommandText = "Delete from kitap where k_id=" + textBox1.Text + "";
                komut.ExecuteNonQuery();
                komut.Dispose();
                baglanti.Close();
                tasima.Clear();
                listele();
            }
        }
        //DataGridView üzerinde tıklanan kaydın ekranda gösterilmesi
        private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
           
           
        }
        //Kayıt Arama Bölümü
        private void button2_Click(object sender, EventArgs e)
        {
            baglanti = new OleDbConnection("Provider=Microsoft.ACE.Oledb.12.0;Data Source=kitap.accdb");
            adaptor = new OleDbDataAdapter("SElect * from kitap where k_id like '%" + textBox2.Text + "%'", baglanti);
            tasima = new DataSet();
            baglanti.Open();
            adaptor.Fill(tasima, "kitap");
            dataGridView1.DataSource = tasima.Tables["kitap"];
            baglanti.Close();
            //Bulunan kayıt textboxlara atanarak gösteriliyor.
            k_id.Text = dataGridView1.CurrentRow.Cells[0].Value.ToString();
            k_adi.Text = dataGridView1.CurrentRow.Cells[1].Value.ToString();
            k_yazari.Text = dataGridView1.CurrentRow.Cells[2].Value.ToString();
            k_isbn.Text = dataGridView1.CurrentRow.Cells[3].Value.ToString();
            k_yayinevi.Text = dataGridView1.CurrentRow.Cells[4].Value.ToString();
            k_basim_yili.Text = dataGridView1.CurrentRow.Cells[5].Value.ToString();
            k_baski.Text = dataGridView1.CurrentRow.Cells[6].Value.ToString();
            k_sayfa_sayisi.Text = dataGridView1.CurrentRow.Cells[7].Value.ToString();
            k_konu.Text = dataGridView1.CurrentRow.Cells[8].Value.ToString();
            k_turu.Text = dataGridView1.CurrentRow.Cells[9].Value.ToString();
            k_fiyati.Text = dataGridView1.CurrentRow.Cells[10].Value.ToString();
            k_resim.Text = dataGridView1.CurrentRow.Cells[11].Value.ToString();
            pictureBox1.ImageLocation = dataGridView1.CurrentRow.Cells[11].Value.ToString();
        }

        // Kayıt güncelleme bölümü
        private void button5_Click(object sender, EventArgs e)
        {
            komut = new OleDbCommand();
            baglanti.Open();
            komut.Connection = baglanti;
            komut.CommandText = "update kitap set k_adi='" + k_adi.Text + "',k_yazari='" + k_yazari.Text + "',k_yayinevi='" + k_yayinevi.Text + "',k_basim_yili='" + k_basim_yili.Text + "',k_baski='" + k_baski.Text + "',k_sayfa_sayisi='" + k_sayfa_sayisi.Text + "',k_konu='" + k_konu.Text + "',k_turu='" + k_turu.Text + "',k_resim='" + k_resim.Text + "'  where k_id =" + k_id.Text + "";
            //,k_resim='" + k_resim.Text + "' 
            komut.ExecuteNonQuery();
            baglanti.Close();
            tasima.Clear();
            listele();
          
        }

        private void dataGridView1_CellEnter(object sender, DataGridViewCellEventArgs e)
        {
            k_id.Text = dataGridView1.CurrentRow.Cells[0].Value.ToString();
            k_adi.Text = dataGridView1.CurrentRow.Cells[1].Value.ToString();
            k_yazari.Text = dataGridView1.CurrentRow.Cells[2].Value.ToString();
            k_isbn.Text = dataGridView1.CurrentRow.Cells[3].Value.ToString();
            k_yayinevi.Text = dataGridView1.CurrentRow.Cells[4].Value.ToString();
            k_basim_yili.Text = dataGridView1.CurrentRow.Cells[5].Value.ToString();
            k_baski.Text = dataGridView1.CurrentRow.Cells[6].Value.ToString();
            k_sayfa_sayisi.Text = dataGridView1.CurrentRow.Cells[7].Value.ToString();
            k_konu.Text = dataGridView1.CurrentRow.Cells[8].Value.ToString();
            k_turu.Text = dataGridView1.CurrentRow.Cells[9].Value.ToString();
            k_fiyati.Text = dataGridView1.CurrentRow.Cells[10].Value.ToString();
            k_resim.Text = dataGridView1.CurrentRow.Cells[11].Value.ToString();
            pictureBox1.ImageLocation = dataGridView1.CurrentRow.Cells[11].Value.ToString();
        }
    }
}

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

WP-SpamFree by Pole Position Marketing

Watch Dragon ball super