|
Veri tabanını
hazırladıktan sonra bu veri tabanına c# ta ADO.NET ile nasıl bağlantı
kurup buradaki verileri nasıl okuyacağımıza geçelim. Bu işlemi Console
uygulaması olarak yapacağız.
1-) Console
Application
İşlemleri nasıl
yaptığımızı kodun ve kodun nasıl çalıştığını adım adım anlatmaya
çalışacağım.
//ADO.NET in temel isim zayı(namespace) System.Data dir.
//Örneğin SQL ile çalışırken ayrı ayrı hem SqlClient hem de OleDb isim
uzaylarını kullanabiliriz.
//SqlClient isim uzayı yalnızca sql sunucu için optimize edilmiştir.
//Access veri tabanı ile çalışacaksak System.Data.OleDb isim uzayını
kullanmamız gerekir.
using
System.Data.OleDb;
namespace
ConsoleApplication1
{
class Program
{
static void
Main(string[] args)
{
// Access ile bağlantı için gerekli provider ı yazıyoruz.
// Veri tabanımızın yerini belirtiyoruz.
string
kaynak="Provider=Microsoft.Jet.OleDb.4.0;
Data Source=c:/okul.mdb;";
//Connection sınıfından baglan nesnemizi türetiyoruz.
OleDbConnection baglan =
new
OleDbConnection(kaynak);
//bağlantımızı açıyoruz
baglan.Open();
//Bağlantı açıldıktan sonra aşağıdaki mesaj yazdırılıyor.
Console.WriteLine("Bağlantı
açıldı…");
//OleDbCommand sınıfından komut nesnesini türetiyoruz.
OleDbCommand komut =
new
OleDbCommand();
//komut nesnesinin baglan nesnesi ile çalışacağını belirtiyoruz.
komut = baglan.CreateCommand();
//Komut nesnemizin ne iş yapacağını yazıyoruz.
//Aşağıdaki sql komutundan da anlaşılacağı gibi komut sınıf tablosundaki
//tüm kayıtları seçiyor.
komut.CommandText = "SELECT * FROM sınıf";
//OleDbDataReader nesnemizi türetiyoruz.
OleDbDataReader oku;
//ExecuteReader() fonksiyonu CommandText deki komutu çalıştırır.
//Yani aşağıdaki kodun açıklaması komut.CommandText = "SELECT * FROM
//sınıf"; çalıştırarak seçme işlemini yap. Okuma işlemi ise Read()
//fonksiyonuyla yapılar
oku = komut.ExecuteReader();
//Dos ekranında çıktının daha düzenli görünmesi için aşağıdakileri
yazdırıyoruz.
//burada \t{0} demek tab tuşuna basılmış gibi boşluk bırak ve birinci
//eleman olarak No yu yaz,
//boşluk bırak İsim i yaz gibi.. Ekranda aşağıdaki gibi görünür.
src="es3_files/image001.jpg" v:shapes="_x0000_s1025">
Console.WriteLine("\t{0}\t{1}\t{2}","No","İsim","soyad");
Console.WriteLine("\t{0}\t{1}\t{2}","—–","—–","—–");
//Sıra kayıtları okumak için döngü kurmaya geldi. Döngü kuruyoruz çünkü
veri tabanımızda birden fazla kayıt var.
//Aşağıda while döngüsü veri tabanındaki kayıtlar bitene kadar çalışır
ve //okunacak kayıt kalmayınca döngüden çıkar.
//Okuma işlemini görüldüğü gibi while ın içinde Read() fonksiyonuyla
//yapıyoruz.
while (oku.Read())
{
Console.WriteLine("\t{0}\t{1}\t{2}",oku["no"],oku["isim"],oku["Soyad"]);
}
//Son olarak kayıtlarımızın tümünü okuyunca bağlantımızı kapatıp mesaj
veriyoruz ve görüntünün ekranda beklemesi için Console.Read()
fonksiyonunu kullanıyoruz.
baglan.Close();
Console.WriteLine("Bağlantı
kapandı…");
Console.Read();
}
}
}
Kodumuzu yazmayı
bitirdikten sonra çalıştıralım. |