C# İle SqlConnection Kullanımı

22.10.2012 Hikmet Okumuş 11906 7 C#


Sql veritabanına bağlantı kurmak için kullanılacak olduğumuz sınıftır. System.Data.SqlClient namespace' i içerisinde yer almaktadır. Kısa kullanım için using ile namespace' i programımıza eklememiz gerekmektedir.
using System.Data.SqlClient;
Namespace' i ekledikten sonra SqlConnection nesnesinden bir tane türetelim.
SqlConnection Baglanti = new SqlConnection();
SqlConnection sınıfının bir adet constructor metodu bulunmaktadır. Bu metod ile türetme aşamasında bağlantı cümlesini belirtebiliriz.
            string BaglantiAdresi = "Server=.;Database=Hokumus;User Id=sa;Password=123456;";
            SqlConnection Baglanti = new SqlConnection(BaglantiAdresi);
Eğer ilk yöntem ile türetme işlemi yapılırsa bağlantı cümlesi ConnectionString özelliğine setlenmektedir.
            string BaglantiAdresi = "Server=.;Database=Hokumus;User Id=sa;Password=123456;";
            SqlConnection Baglanti = new SqlConnection();
            Baglanti.ConnectionString = BaglantiAdresi;
Bağlantı cümlesini yazdıktan sonra veritabanı bağlantısını açmak için Baglanti nesnemizin Open(); metodu kullanılacaktır ve bu şekilde bağlantı açılacaktır.
            string BaglantiAdresi = "Server=.;Database=Hokumus;User Id=sa;Password=123456;";
            SqlConnection Baglanti = new SqlConnection();
            Baglanti.ConnectionString = BaglantiAdresi;
            Baglanti.Open();
Eğer BaglantiAdresi içerisinde yazan bilgiler doğru ise bağlantı gerçekleşecektir. Hatalı ise ConnectionTimeout süresi dolduğunda bağlantı hatası verecektir. ConnectionTimeout' un varsayılan değeri 15 saniyedir. Baglanti nesnesi içerisinde bulunan ConnectionTimeout özelliği sadece okunabilir bir alandır. Set edilemez. Bağlantı cümlesi içerisinde belirtilmesi gerekmektedir.
                string BaglantiAdresi = "Server=.;Database=Hokumus;User Id=sa;Password=123456; connection timeout=30;";
                SqlConnection Baglanti = new SqlConnection();
                Baglanti.ConnectionString = BaglantiAdresi;
                Baglanti.Open();
Bu şekilde timeout süresini 30 saniye olarak setlemiş olduk. Timeout süresi olarak 0 değeri atanırsa bağlantı süresi sınırı kalkacaktır.
Açılan bağlantıyı kapatmak için Baglanti nesnemizin Close(); metodu kullanılacaktır.
                stringBaglantiAdresi = "Server=.;Database=Hokumus;User Id=sa;Password=123456; connection timeout=30;";
                SqlConnection Baglanti = new SqlConnection();
                Baglanti.ConnectionString = BaglantiAdresi;
                Baglanti.Open();
                MessageBox.Show("Bağlantı Açıldı.");
                Baglanti.Close();
                MessageBox.Show("Bağlantı Kapandı.");
Bu şekilde bağlantımızı açtık ve kapattık. Genel olarak bu bilgiler ile bir veritabanına bağlantı kurulabilmektedir.

Başarılar dilerim.


Kullanıcı Yorumları


hikmet okumuş makale yorum
Cagatay Sarp Aksu
25.05.2014 16:50:05
Merhaba ben domain adresime bağlı bir database den veri almak istiyorum fakat bağlantı sağlayamıyorum. Yardım eder misiniz?
hikmet okumuş makale yorum
Hikmet Okumuş
25.05.2014 18:19:52
Selamlar, Aşağıdaki bağlantı cümlesinde ilgili alanları kendine göre revize ederek deneyebilirsin. "Data Source=ServerIP;Initial Catalog=Database;Persist Security Info=True;User ID=User;Password=Password";
hikmet okumuş makale yorum
Selçuk Dursun Hepsoy
16.05.2015 04:20:10
Çok teşekkürler, güzel anlaşılır bir şekilde yazmışsınız.
hikmet okumuş makale yorum
fikret
15.12.2015 23:09:11
bu bağlantı adresinden kastınız nedir acaba ? bilmedigim için yapamıyorum
hikmet okumuş makale yorum
Hikmet Okumuş
16.12.2015 13:14:22
Merhaba Fikret, SqlConnection nesnesi, SQL veritabanına bağlantı kurmanı sağlamaktadır. Bu bağlantı için bir connection string bilgisine ihtiyaç duyulmaktadır. Connection string içerisinde SQL veritabanına ulaşacağın IP, bağlantı yapacağın veritabanı adı, kullanıcı adı, şifre vb. bilgileri barındırır. Bağlantı cümlesinden kasıt budur. Aşağıdaki siteden veritabanlarının bağlantı bilgilerini öğrenebilirsin. http://www.connectionstrings.com/
hikmet okumuş makale yorum
Kerem W.
19.07.2016 22:19:34
Hakikaten çok güzel bir site olmuş bütün makaleleri okumaya çalıştım, bence yazmaya devam et bana(bizlere) faydası çok büyük. Teşekkürler..
hikmet okumuş makale yorum
Hikmet Okumuş
20.07.2016 16:32:40
Merhaba Kerem, Değerli yorumların için teşekkür ederim. Fırsat buldukça yeni makaleler yazmaya devam edeceğim.


Yorum