27 Mart 2013 Çarşamba

Veritabanı - 6... Verileri Kaydetme ve Silme...

Şimdi sıra kayıt ekleme ve silme komutlarına geldi... Komut kullanımları olarak daha kolaydır... Kayıt ekleme işleminde veri tiplerine dikkat etmemiz şart... Sayı olan yere metin kaydetmek istediğiniz anda otomatik olarak hata verir... Hatta sayı tanımlamalarınız da virgüllü ifadeler sorun çıkartabilir... Bunu engelleyecek bir yöntem var.. .Parametre kullanımı... İleri ki örneklerde göreceğiz... 

SQL yapısında kaydetme komutu insert dür... Kullanımı ise aşağıdaki gibidir... 

insert into kimlik (adisoyadi, adres)  values ('Büşra','Üsküdar')

Buradaki örnekte kimlik veritabanında ki tablonun adıdır... 
adisoyadi ve adres ise tablodaki alanların isimleridir... 
Gireceğimiz verileri yine sıralı olarak Büşra ve Üsküdar olarak giriyoruz... Aynı sırayı kullanmak zorundayız... Aynı şekilde kaç tane alan adı belirliyorsak o kadar veri girmek zorundayız... 
Alan adı belirlemek yerine aşağıdaki gibi bir kullanım da yapabiliriz... 

insert into kimlik  values ('Büşra','Üsküdar')

Bu durumda tabloda bulunan bütün alanlara veri girmek zorundayız... 

Kayıt silme işleminde ise bir alana ait olan veriyi bulmamız yeterli... Bu şekilde bütün satırı silebiliriz... Yaptığımız örnekte adisoyadi kısmına göre arama yaptırıp silme işlemini gerçekleştiriyoruz... Kullanımı aşağıdaki gibidir...

Delete From kimlik where adisoyadi=('Büşra')

Buradaki örnekte kimlik veritabanında ki tablonun adıdır... 
adisoyadi alanında Büşra isimli birisi varsa ona ait olan bütün satır silinmektedir... 


Formumuzun ilk hali bu şekilde... Aşağıdaki tasarımı hazırlayınız... 
 

Veritabanımızın tasarım kısmı da bu şekilde olacaktır... Burada numara olmasa da olur... 

Programı çalıştırıp kaydet butonuna bastığımız anda her hangi bir sorun olmaması durumunda aşağıdaki mesajı verip veritabanına kaydetmektedir... 

Veritabanına verinin kaydedilmiş hali aşağıdaki gibidir... 

Veri silmek için ise sadece isim kısmına bakılmaktadır... Büyük küçük harf kontrolü yaptırmadığımız için veri girişinde harflere dikkat edelim... İsmi girip Sil tuşuna basıldığı anda Kayıt Silindi diye mesaj göndermektedir... 

Kayıtın silindiğini de aşağıdan görebilirsiniz... 

Programımızın kodları aşağıdaki gibidir;

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;

namespace WindowsApplication40
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        OleDbConnection baglan = new OleDbConnection("provider=Microsoft.jet.oledb.4.0; Data Source=kimlik.mdb");
        OleDbCommand komut = new OleDbCommand();
       
        private void button1_Click(object sender, EventArgs e)
        {
            komut.Connection = baglan;
            // Tabii bizim bilgilerimiz textboxlar da olduğu için aşağıdaki gibi komut satırımızı yazıyoruz... 
            komut.CommandText = "insert into kimlik(adisoyadi,adres) values('" + textBox1.Text + "','" + textBox2.Text + "')";
            baglan.Open();
            komut.ExecuteNonQuery();// Veritabanında veri değişikliğinin yapıldığı kısım burasıdır... Bu sebeple bağlantının bu komutdan önce açılıp sonra kapatılması yeterli olacaktır... 
            baglan.Close();
            MessageBox.Show("Kayıt Eklendi");
        }

        private void button2_Click(object sender, EventArgs e)
        {
            komut.Connection = baglan;
            komut.CommandText = "Delete From kimlik where adisoyadi=('" + textBox1.Text + "')";
            baglan.Open();
            komut.ExecuteNonQuery(); // Program bu satırda hata veriyorsa bilinki üsteki sql satırında sıkıntı var demektir...
            baglan.Close();
            MessageBox.Show("Kayıt Silindi");
        }
    }
}