Asp.Net Sql Veritabanı Bağlantısı

Asp.Net Sql Veritabanı Bağlantısı

Asp.Net Sql Veritabanı Bağlantısı, C# ile Web uygulamaları geliştirirken veritabanı bağlantılarında Microsoft’un bize sunduklarından faydalanacağız. .NET Framework üzerinde veritabanı bağlantısındaki köprüye Ado.Net denir. Ado.Net ve Asp.Net nedir? teknolojisinde yazılım ile veritabanı arasındaki iletişimi kuran bir yapıdır.

Bağlantı yapılırken çeşitli nesnelerden yararlanırız.Bağlantıyı gerçekleştirebilmek için öncelikle Visual Studio içerisinde yeni bir Asp.Net projesi (Web Application) açmalıyız. Açılan Default.aspx sayfasında kod kısmında herhangi bir yere sağ tıklayarak view code diyerek code behind‘i açalım. Veya Solution Explorer penceresinde Default.aspx sağ tıklanarak view code diyerek code behindi açabilirsiniz. Bu işlemi gerçekleştirmek bizleri Default.aspx.cs dosyasına ulaştırır. Bizler bu dosya üzerinde çalıcağız.

Asp Veri Tabanı Bağlantısı
Asp Veri Tabanı Bağlantısı

Data ve Data.SqlClient Sınıfları

Default.aspx.cs dosyası açıldığında üst tarafta using ile başlayan bir çok kütüphane bulunuyor.Bu kütüphaneler arasına System.Data ve System.Data.Sqlclient kütüphanelerini de eklemeliyiz. Data veri demektir. SqlClient ise Sql istemcisi anlamına gelir. C# üzerinde bir nesne çağırdığımızda o nesne sınıfa bağlı olarak çalıştığı için bu iki kütüphaneye ihtiyacımız var.

Eğer veritabanı bağlantınız MSSQL dışında bir bağlantı ise;

  • MySQL bağlantısı için: using System.Data.MySqlClient
  • Access bağlantısı için: using System.Data.OleDbClient

kütüphanelerini eklemelisiniz.

Biz MsSql bağlantısı ile çalışacağız bu yüzden Default.aspx.cs dosyasına bu iki sınıfı ekleyelim.

using System.Data;

using System.Data.Sqlclient;

Bu sınıfları ekledikten sonra bağlantı nesnelerini kullanabiliriz. Veritabanı bağlantı cümlelerine Connection string diyoruz.Bu cümleler olmadan sayfa sunucuya bağlanamaz.

MSSQL için connectionstring;

Kod:

olacak şekilde bu cümleyi oluşturabilirsiniz.

Bu cümle içerisindeki nesneleri biraz açıklayalım.

  • Server=.; => Sunucunun yerel sunucu olduğunu belirtiyor.
  • Database=Veritabanınız; => Veritabanını belirten kısımdır.Hangi verilere ulaşacağını belirtiriz.
  • User Id=sa; =>Kullanıcı ismi belirtilir.Sql doğrulamasından gelen sa(system administrator) belirtilir.
  • Password=şifreniz; => Sql doğrulamada kullandığınız şifre.

Bağlantı Cümlesi Nereye Yazılmalı?

Bağlantı cümlesi public partial class ile protected void Page_Load kısımları arasına yazılır.Buraya yazmamızın sebebi her yerden erişebilmek içindir.

Şimdi bağlantımızı oluşturalım:

Bağlantıyı Açmak

Bağlantımızı tanımladıktan sonra bağlantımızı çalıştırmalı yani açmalıyız.Bunun için con.Open() komutunu çalıştırmalıyız.Bu komutu Page_Load kısmına yazmalıyız.

Çünkü Page_Load kısmı ilk okunan kısımdır bu yüzden oraya yazmak doğru olandır.

Bu işlemleri Default.aspx.cs dosyasında yazmak yerine Class dosyalarında C# ile kodlayabilirsiniz.Bununda örneğini verelim:

Öncelikle Solution Explorer’da bulunan proje adımıza sağ tıklayarak Add diyerek Class1.cs dosyamızı oluşturuyoruz.Yine aynı şekilde using System.Data ve using System.Data.SqlClient kütüphanelerimizi yazıyoruz.Ve sonrasında bağlantı kodumuzu oluşturuyoruz:

Kod:

Açıklama: public olarak oluşturmamızın sebebi diğer sayfalarımızda da bu kodumuza ulaşabilmektir.con.Open() kodunu yazmamızın sebebi ise her yazacağımız işlem için tekrar tekrar bağlantıyı açmak yerine tek bir seferde açmak ve kod fazlalığını azaltmak.

Peki bu kodu nasıl kullanacağız. Default.aspx.cs dosyamıza geri dönüyoruz.

Öncelikle Class1.cs sayfamıza ulaşabilmek için public partial class ile protected void Page_Load kısımları arasında bir nesne oluşturuyoruz:

Kod:

Ve bağlantımızı kullananbilmek için diğer kullanımda da yaptığımız gibi Page_Load içerisinde bağlantımızı açacağız:

Kod:

Class dosyasının kullanımı kod kullanımını en aza indirmek ve kod karmaşasından uzak kalabilmek için rahat bir kullanımdır.

Bir sonraki yazımızda bağlandığımız veri tabanından tablolar içerisinde bulunan verileri Datalist ile listelemek olacak.

2 Yorum

  1. Derya Söylemez demiş ki:

    Gerçekten çok faydalı bir yazı olmuş çok faydalanma fırsatı buldum. Çok teşekkür ederim.

    11 Ağustos 2019
    Yanıtla
    • Tahsin Berk Ceylan demiş ki:

      Biz de çok teşekkür ederiz. İyi çalışmalar diliyoruz. Web tasarımla kalın.

      20 Ağustos 2019
      Yanıtla

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir