SQL Veri Tabanı İşlemleri

Bu dersimizde C#'ta SQL veritabanı işlemlerini göreceğiz.

İlk önce SQL'den veritabanı işlemleri gerçekleşebilmesi için aşağıdaki namespace'yi tanımlıyoruz.


using System.Data.SqlClient;



Şimdi de SQL'den bir veri nasıl çekilir,onu görelim:


private void button1_Click(object sender, EventArgs e)

        {

            if (textBox1.Text == "")// Eğer textbox1.Text boş ise;

            {

                MessageBox.Show("Lütfen boş alanı doldurunuz.", "Hata");// Bu mesajı yazdır.



            }

            else// Aksi taktirde aşağıdaki işlemler gerçekleşir.

            {

                SqlConnection conn = new SqlConnection(@"integrated security=true; server=PCNK; database=Uyeler");// Bu SQL'e bağlanmak için gerekli kodumuz.

                conn.Open();//Bağlantıyı açtık.

                SqlCommand cmd = new SqlCommand("SELECT * FROM uyeler WHERE uye_id='" + textBox1.Text + "'", conn);//Burada uyeler Tablosundan bilgileri çekiyoruz ama neye göre Textbox1.Text'e göre.Burada WHERE şart belirtir.SLEECT komutu bilgi çekmeye yarayan komuttur.

                SqlDataReader dr = cmd.ExecuteReader();//Verilerin okunması için Reader tanımlıyoruz.

                while (dr.Read())//Tablodaki bilgiler okunduğu sürece bilgileri textbox'lara atıyoruz.

                {

                    textBox2.Text = dr["uye_adi"].ToString();

                    textBox3.Text = dr["uye_soyadi"].ToString();

                    textBox4.Text = dr["ili"].ToString();

                    textBox5.Text = dr["ilcesi"].ToString();

                    textBox6.Text = dr["dtarihi"].ToString();

                }

                conn.Close();//Bağlantıyı kapattık.

                dr.Close();//Readeri kapattık.

                conn.Dispose();//Bağlantının kapanmasının güvenilir olması için bağlantıyı boşalttık.

            }



        }



Şimdi de SQL'e bir veri nasıl eklenir,onu görelim:


private void button2_Click(object sender, EventArgs e)

        {

            if (textBox7.Text == "" || textBox8.Text == "" || textBox9.Text == "" || textBox10.Text == "" || textBox11.Text == "" || textBox12.Text == "")// Yine mantık aynı.

            {

                MessageBox.Show("Lütfen boş alan(lar)ı doldurunuz.", "Hata");

            }

            else

            {

                SqlConnection conn = new SqlConnection(@"integrated security=true; server=PCNK; database=Uyeler");

                conn.Open();

                SqlCommand cmd = new SqlCommand("INSERT INTO uyeler(uye_id,uye_adi,uye_soyadi,ili,ilcesi,dtarihi) VALUES('"+textBox7.Text+"','" + textBox8.Text + "','" + textBox9.Text + "','" + textBox10.Text + "','" + textBox11.Text + "','" + textBox12.Text + "')", conn);//INSERT INTO komutu bir tabloya bilgi eklemeye yarayan komuttur.Burada uyeler tablosundaki alanlara (uye_id,uye_adi...)sırasıyla textBox'lardaki bilgileri ekledik.

                cmd.ExecuteNonQuery();//Bu komutla textBox'taki bilgileri tabloya ekledik.ExecuteNonQuery olmayan bilgiyi tabloya eklememize yarar.

                MessageBox.Show("Yeni kayıt başarıyla gerçekleştirildi.", "Bilgilendirme");

                conn.Close();

                conn.Dispose();

            }

        }



Şimdi de SQL'dee varolan bil bilgi nasıl güncellenir,onu görelim:


private void button3_Click(object sender, EventArgs e)

        {

            if (textBox13.Text == "" || textBox14.Text == "" || textBox15.Text == "" || textBox16.Text == "" || textBox17.Text == "" || textBox18.Text == "")//Yine aynı mantık.Burada || operatörü Or anlamını taşır.

            {

                MessageBox.Show("Lütfen boş alanları eksiksiz doldurunuz.", "Hata");

            }

            else

            {

                SqlConnection conn = new SqlConnection(@"integrated security=true; server=PCNK; database=Uyeler");

                conn.Open();

                SqlCommand cmd = new SqlCommand("UPDATE uyeler SET uye_adi='" + textBox14.Text + "',uye_soyadi='" + textBox15.Text + "',ili='" + textBox16.Text + "',ilcesi='" + textBox17.Text + "',dtarihi='" + textBox18.Text + "' WHERE uye_id='" + textBox13.Text + "'", conn);//UPDATE komutu tabloda varolan bir bilgiyi güncellemeye yarar.SET güncellenecek alanların hangisi olduğunu gösterir.UPDATE'de her zaman şart vardır.Neye göre bilgi güncelleyeceğiz.Onu da WHERE komutuyla belirleriz.

                cmd.ExecuteNonQuery();

                MessageBox.Show("Güncelleme işlemi başarıyla gerçekleştirildi.", "Bilgilendirme");

                conn.Close();

                conn.Dispose();

            }

        }



Şimdi de SQL'de varolan bil bilgi nasıl silinir,onu görelim:


private void button4_Click(object sender, EventArgs e)

        {

            if (textBox19.Text == "")

            {

                MessageBox.Show("Lütfen ID yi doğru giriniz.", "Hata");

            }

            else

            {

                SqlConnection conn = new SqlConnection(@"integrated security=true; server=PCNK; database=Uyeler");

                conn.Open();

                SqlCommand cmd = new SqlCommand("DELETE FROM uyeler Where uye_id='" + textBox19.Text + "'", conn);//DELETE komutu tablodaki bil bilgiyi silmeye yarar.Yine bu komutta da şart vardır.Neye göre bilgi silinecek.Onu da WHERE komutuyla belirleriz.

                cmd.ExecuteNonQuery();

                MessageBox.Show("Silme işlemi başarıyla gerçekleştirildi.", "Bilgilendirme");

                conn.Close();

                conn.Dispose();

            }

        }

    }

  • Etiketler;
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

sayın Nuh bey. çok güzel anlatmışsınız. Eminim çok iyi biliyorsunuzdur. fakat biz o kadar bilmiyoruz. nasıl bir form yapacağız?, formda kaç tane TextBox olacak? ya da nelere forma ekleyeceğiz?, en az bir foto koysaydınız. belki bakarak anlardık... mümkünse benim gibileri de düşünüp ona göre anlatırsanız sevinirim. bu anlattığın benim gibileri çok aşıyor. saygılarla...
İlk önce yorumunuz için teşekkürler.Ben kaç adet Textbox koyacağınızı kodlardan anlarsınız sanmıştım o yüzden resim koyma gereği duymadım kusura bakmayın,bundan sonra tedbirli davranırım. (:
... benim bir maruzatım vardı c# hakkında! takip programı yazmaya çalışıyorum... access veritabanı kullanarak kaydet sil ara güncelle gibi işlemler yapmak istiyordum.. c# access veritabanı arası kaydetmeyi yaptım fakat silmeyi yapamadım bi yardımcı olurmusunuz... tabi değerli vaktinizden çok çalmıcaksam : )
SQL den veri çekme kodlarında sorun mu var yoksa ben mi beceeremedim anlamadım bi kontrol eder misiniz?
Hiçbir sorun yok. Sen yapamamış olabilir misin?

Yukarı Git