• Kategori: Yazılım
  • Eyüp ÇELİK
  • Gösterim: 7512

CSharp ile MSSQL Servera Veri Girişi

Microsoft yazılımcılar için kolaylık sağlamak adına Visual C# dilini yayın hayatına soktuğu günden beri tartışılmasız yazılım dünyasına hükmetmeye adım adım ilerliyor. Programcıların kod yazma sıkıntısını .Net ile aşmalarını sağlayan Microsoft, az kod ile çok iş yapmamız için bize gerekli olan tüm imkanları sağlamak için kütüphanesini sürekli olarak geliştirmekte. Günümüz Microsoft yazılımlarının bir çoğu artık Visual C# ile yazılmakta. Visual C# esnek ve rahat kullanımı ile tüm isteklerimize fazlası ile cevap verebilen bir mimariye sahiptir. Bizde bugün ki makalemizde Visual C# mimarisini kullanarak MS SQL Server’a dinamik veri girişini ufak bir uygulama yaparak inceleyeceğiz.

 

Dinamik veri girişinden kastım, C# ile hazırlamış olduğumuz bir form üzerinde bulunan TextBox ile kullanıcının girmiş olduğu verileri SQL Vertabanına göndereceğiz.


Visual Studio’ yu açarak sol taraftan New Project i yada Ctrl + Shift + N tuşları ile yeni proje ekranını açıyoruz.


 

Gelen ekranda sol tarafta bulunan Installed Templates bölümünden Visual C#’ı seçiyoruz. Sonra Windows Forms Application’ı tıklayıp Name kısmına geliyoruz ve projemize SQLBaglantisi şeklinde bir isim verip OK tıklıyoruz. Yeni projemiz açıldıktan sonra form üzerine 3 TextBox, 2 buton ve 6 label atıp aşağıdaki görüntüyü elde ediyoruz.

 


Forma atmış olduğumuz kontrollerden labelları sırası ile sağ clikleyip properties’i tıklayalım. Bu işlemi SQL Durumu label’ı için yapalım. SQL Durumu Label’ına sağ click leyip properties i tıklayın. Sağ - Alt tarafta bulunan Properties penceresini aşağı doğru kaydırıp Text yazan yere kadar inin ve mevcut yazıyı silip, SQL Durumu: yazın. Sonra aynı yerden yukarı doğru çıkıp (Name) kısmına gelin. Mevcut ismi silip, lblSqlDurum yazıp Enter tuşuna basın. Aynı işlemleri tüm Label lar için yapın. Name kısımları aşağıdaki gibi olacak.

SQL Durumu : lblSqlDurum

Label5 : lblDurumSonuc

İsim : lnlIsim

Soyisim : lblSoyIsim

İl : lblIl

İlçe : lblIlce

Texbox lar’ın (Name) kısmı ise aşağıdaki gibi olacak:

İsim Textbox’ı : txtIsim

Soyisim Textbox’ı :txtSoyIsim

İl Texbox’ı : txtIl

İlçe Texbox’ı : txtIlce

Kaydet butonu için (Name) kısmı aşağıdaki gibi olacak:

Kaydet : btnKaydet

Kapat : btnKapat

Tüm bu işlemleri rahatlıkla grafiksel arayüz üzerinden yapıyoruz. C# bize tüm bu işlemleri clickler ile halletmemize olanak tanımakta. Şimdi ise programı sql e bağlama kısmına geçiyoruz. Formun herhangi bir boş alanını çift tıklayıp kod kısmına erişiyoruz. En üstte bulunan

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;

kodlarının altına using System.Data.SqlClient; tı ekliyoruz ve kodumuzun üst kısmının aşağıdaki gibi olmasını sağlıyoruz.

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.SqlClient;

 

Daha sonra program ilk açıldığında SQL Server’a bağlanmasını ve gelip bağlantı durumunu Label5 e yazmasını istiyoruz. Bunun için Formun Load olayını yani formun ilk yüklenme zamanında ki olayına erişip SQL Server’a bağlıyoruz. Bunun için aşağıdaki kodları yazıyoruz.

 

SqlConnection SQLFormVeriBaglantisi = new SqlConnection();

SQLFormVeriBaglantisi.ConnectionString = "server=192.168.1.12;user=sa;pwd=1234;database=Eyup_Test_DB;";

SQLFormVeriBaglantisi.Open();

Bu kodlar ile öncelikle SQLFormVeriBaglantisi adında bir sql veritabanı bağlantısı oluşturduk. Daha sonra ConncetionString parametresi ile veritabanı yolunu belirledik. Buna göre formu çalıştırdığımızda form çalışmaya başladığı anda 192.168.1.12 ip adresine sahip sql server’a gidip, kullanıcı adı olarak sa ve şifre olarak ta 1234 kullanarak Eyup_Test_DB isimli veritabanına bağlanacak. Bunun hemen altına da SQLFormVeriBaglantisi.open komutu ile veritabanına bağlantıyı açmış olduk.

Tabi biz istiyoruz ki sql veritabanına bağlantımız olunduğunda Label5’in arka planı yeşil renk alsın ve SQL Bağlantısı Başarılı şeklinde Label5 in adı değişsin. Bunun için aşağıdaki gibi küçük bir if değimi yazıyoruz. Diyoruz ki eğer SQL Server’a sorunsuz bağlanılır ise Label5’in ark planını yeşile boya ve Veri Girişi Yapabilirsiniz yaz. Eğer SQL Server’a bağlanılamaz ise Label5’in arka planını kırmızı yap ve Veri Girişi Yapamazsınız! Yaz.

 

lblDurumSonuc.Text = SQLFormVeriBaglantisi.State.ToString();

if (lblSqlDurum.Text == "Open")

{

lblDurumSonuc.BackColor = Color.Green;

lblDurumSonuc.Text = "Veri Girişi Yapabilirsiniz";

}

else

{

lblDurumSonuc.BackColor = Color.Red;

lblDurumSonuc.Text = "Dikkat! Veri Girişi Yapamazsınız!";

}

 

Yukarıdaki kodları form sql bağlantı cümlesinin hemen altına yazıyoruz.SQLFormVeriBaglantisi.State.ToString(); kodu ile önce label5’in textini SQLFormVeriBaglantisi nın durumundan alarak label5’e yazdırıyoruz. Böylece sql e bağlantı sağlandığında label5 e Open diye gelip yazacak. Bundan sonra if değimimizi oluşturuyoruz ve diyoruz ki eğer label5 te open yazıyorsa

lblDurumSonuc.BackColor = Color.Green;

lblDurumSonuc.Text = "Veri Girişi Yapabilirsiniz";

 

Bu kod çalışarak labelin arkaplanını ve yazısını değiştirsin diyoruz. Eğer open yazmaz ise;

lblDurumSonuc.BackColor = Color.Red;

lblDurumSonuc.Text = "Dikkat! Veri Girişi Yapamazsınız!";

 

arkaplan ve yazıyı buna göre değiştir diyoruz.

 

Bunları yaptıktan sonra Form a geri dönüp kaydet butonuna çift tıklayıp click olayına erişiyoruz. Yeni bir sql bağlantısı oluşturuyoruz. Kaydet butonuna basılınca textboxlardan aldığımız veriyi sql server a kaydetmiş olacağız.

 

Butonun click olayına aşağıdaki sql bağlantı cümlelerini yazıyoruz.

 

SqlConnection SQLFormVeriBaglantisi2 = new SqlConnection();

SQLFormVeriBaglantisi2.ConnectionString = "server=192.168.1.12;user=sa;pwd=1234;database=Eyup_Test_DB;";

 

SqlCommand txtVeriGirisi = new SqlCommand("insert into EYUP_FORM (eyp_isim,eyp_soyisim,eyp_il,eyp_ilce) values('" + txtIsim.Text + "','" + txtSoyIsim.Text + "','" + txtIl.Text + "','" + txtIlce.Text + "')", SQLFormVeriBaglantisi2);

SQLFormVeriBaglantisi2.Open();

txtVeriGirisi.ExecuteNonQuery();

SQLFormVeriBaglantisi2.Close();

MessageBox.Show("Kayıt işlemi Tamamlandı", "Kayıt Bilgisi");

 

Yukardaki kodları ile önce sql bağlantısı oluşturduk. Sonra txtVeriGirisi adında bir sql komutu oluşturup, bu sql komutuna EYUP_FORM tablosunda, eyp_isim, eyp_soyisim, eyp_il ve eyp_ilce isimli kolonlara texboxtan alınan verileri yaz diyoruz. Sonra sql bağlantısı aç diyoruz ve yazmış olduğumuz txtVeriGirisi sql komudunu execute et diyoruz. Tüm bunları yaptıktan sonra sql bağlantısını kes ve kullanıcıya kayıt tamamlandır mesajı veriyoruz.

 

Son olarak forma geri dönüp Kapat butonuna çift tıklayıp click olayına erişiyoruz ve this.Close(); yazıp F5 ile projemizi derliyoruz.

 

Yapmış olduğumuz SQL bağlantı proje dosyasını aşağıdan indirebilirsiniz.

http://www.eyupcelik.com.tr/Projeler/SQLBaglantisi.rar

 

Not: Yazılım konusunda yazmış olduğum ilk makaledir. Anlatım yahut uygulama ile ilgili olarak sorun yaşıyor iseniz konu altına yazabilirsiniz.

Comments

-2 Guest 14-06-2013 14:24 #1
Abi Selamlar..Bir De Linq To Sql Bağlantısına Değinir Misin..( .mdf Dosyaları Projedeki Klasöre Atmaya İzin Verilmiyor Abi) Bunlar Kafamdaki Sorular..

Kolay Gelsin
Quote
-2 Guest 31-10-2014 16:02 #2
merhaba benim bir ödevim var 3 butonum var bunlar tema renkleri temayı açtıktan sonra textboxlara tıklayınca farklı renk cıkınca farklı renk olması lazım ancak bunu 3 temadada ayrı ayrı nasıl yapabilirim (yeni basladım kısayol kodu olmasın lutfen)
Quote

Yorum ekle


Güvenlik kodu Yenile

Bookmaker betfair Bonus review by ArtBetting.co.uk

Bookmaker bet365 review by ArtBetting.co.uk

Germany bookmaker b.artbetting.de review by ArtBetting.de

Bookmaker Greece BET365 review by ArtBetting.gr

Back to top