burasibedava.com BURDA HERŞEY BEDAVA: C# SQL Server Veritabanından Combobox’a Veri Çekme
C# SQL Server Veritabanından Combobox’a Veri Çekme etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
C# SQL Server Veritabanından Combobox’a Veri Çekme etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

15 Haziran 2012 Cuma

C# SQL Server Veritabanından Combobox’a Veri Çekme


Öncelikle kısaca C# ile SQL Server bağlantısı hakkında bilgi vereyim. C# uygulamamız ile SQL Server arasındaki bağlantıyı ADO.NET sağlar. Yani ADO (Activex Database Object) uygulamamız ile Sql arasında köprü görevi görüyor diyebiliriz. Ayrıca ADO.NET kütüphanesini bütün uygulamalarımızda kullanmamız mümkündür. C# ileSQL Server bağlantısı hakkındaki ayrıntılı bilgiye aşağıdaki linkten ulaşabilirsiniz arkadaşlar.

C# SQL Server Veritabanına Bağlanma

Şimdi Combobox’ a veri çekme uygulamamıza geçelim arkadaşlar.
Program: Programımızın yapacağı işlem SQL Server ile oluşturulmuş olan veritabanındaki herhangi bir tabloda bulunan bir alandaki verileri C# uygulamamızdaki Combobox’ a aktaracağız.
>>> Öncelikle yeni bir proje açalım ve formumuza bir Combobox nesnesi ve bir de Button ekleyelim.
>>> Uygulamamızın görüntüsü aşağıdaki gibi olacaktır.
SqlServerdan-Comboboxa-VeriÇekme - 1
SqlServerdan-Comboboxa-VeriÇekme - 1
>>> Daha sonra aşağıdaki Kodları uygulamıza ekliyoruz.
?View Code CSHARP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
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;
namespace SqlServerdan_Comboboxa_VeriÇekme
{
    public partial class Form1 : Form
    {
        //Burada ise bağlantı cümlemizi yazdık.Bu bağlantı cümlesini buraya yazmamızın sebebi buraya yazdık ve baglan ismindeki bağlantı
        //cümlemizi global olarak tanımladık ve bu sayede istediğimiz kod satırında kullanabilcedeğiz.
        SqlConnection baglan = new SqlConnection("Data Source=localhost\\Sqlexpress;Initial Catalog=bilgiler;Integrated Security=true");
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            //Daha Fazlası İçin GorselYazilim.Net Adresini Ziyaret Edin...
 
            //Öncelikle if ile bağlantımızı kontrol ettik ve eğer bağlantı kapalı ile açması için gerekli kod satırını yazdık.
            if (baglan.State == ConnectionState.Closed) baglan.Open();
            //Sonra sorgu adında değişken oluşturduk ve buna kimlik tablosundaki adi ve sadi alanındaki verileri aktardık.
            //Biz sadece adı v ve soyadını çekeceğimiz için adi,sadi alan adlarını yazdık başka bir alandaki verileri çekecek olsaydık o alanın
            //ismini yazmamız gerekecekti.
            string sorgu = "Select adi,sadi from kimlik";
            //Aşağıdaki kodda ise SqlCommand sınıfından komut isminde bir nesne oluşturdu.Bu nesneye ise sorgumuzu aktardık.
            SqlCommand komut = new SqlCommand(sorgu, baglan);
           //Burada ise SqlDataReaderin yaptığı işlem yukardaki komutu çalıştırıyor ve gelen verileri oku nesnesine aktarıyor.
            SqlDataReader oku = komut.ExecuteReader();
            //Burda ise ComboBox'ı temizledik çünkü butona sürekli tıklandığında aynı verileri eklememesi için.
            comboBox1.Items.Clear();
            //Burda ise While döngüsü ile verilerimizi tek tek okuttuk ve ComboBox nesnemize aktardık.
            while (oku.Read())
            {
                //Burda şunu açıklayayım buradaki mantık şu oku diyoruz neyi okuyacak yukardaki sorgumuzu sonra ise GetString
                //ile getir diyoruz neyi 0 yazmışız çünkü Select ifademizde yukarda adi başta olduğu için.
                //Eğer önce adını sonra soyadını çekecek olsaydık yukardaki sorgu ifadesine göre birinci getstringe 1 ikincisine
                //ise 0 yazardık.
                comboBox1.Items.Add(oku.GetString(0) + " " + oku.GetString(1));
            }
            //İşlemimiz bittikten sonra ise her zaman baglantımızı kapatıyoruz...
            baglan.Close();
        }
    }
}
>>> Arkadaşlar kodlar size fazla gözükebilir ama aslında çok basit bir uygulama. Her kod için ayrı ayrı açıklama yaptım. Birazda o yüzden uzun oldu.
Programımızın Ekran Görüntüleri
>>> Programımızı İlk Çalıştırdığımda Gördüğünüz Gibi ComboBox Nesnemiz Boş.
SqlServerdan-Comboboxa-VeriÇekme - 2
SqlServerdan-Comboboxa-VeriÇekme - 2
>>> Burada İse Gördüğünüz Gibi Verileri Çek Butonuna Tıkladıktan Sonra Veriler ComboBox Nesnemize Eklendi.
SqlServerdan-Comboboxa-VeriÇekme - 3
SqlServerdan-Comboboxa-VeriÇekme - 3
C#’ da SQL Server Management Studio Express‘ de bulunan bir veritabanından ComboBox nesnesine veri çekmeyi gördük arkadaşlar, Umarım Yararlı Olur.