50
Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA BAĞLANTI GERÇEKLEŞTİRMEK Sayfa Yüklendiğinde; Access Komutu; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); baglanti.Close(); Response.Write("bağlantı başarılı bir şekilde gerçekleştirildi....!!!"); SQL Komutu; SqlConnection baglan = new SqlConnection("Data Source=admin(admin=bilgisayarımızın adıdır)\\SQLEXPRESS;initial Catalog=deneme ;integrated security=sspi"); Response.Write("bağlantı başarılı bir şekilde gerçekleşti"); baglan.Close(); COMMAND NESNESİ Form sayfası yüklendiğinde; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("select * from ailebilgileri", baglanti); alinan_veri = komut.ExecuteReader(); baglanti.Close(); Response.Write("bağlantı başarılı bir şekilde gerçekleştirildi....!!! ve veriler command nesnesi ile okundu....!!!!"); DATAREADER NESNESİ Form sayfası yüklendiğinde;

ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

  • Upload
    others

  • View
    20

  • Download
    2

Embed Size (px)

Citation preview

Page 1: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1

ASP.NET ORTAMINDA C#

VERİTABANI UYGULAMALARI

VERİTABANINA BAĞLANTI GERÇEKLEŞTİRMEK

Sayfa Yüklendiğinde;

Access Komutu;

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); baglanti.Close(); Response.Write("bağlantı başarılı bir şekilde gerçekleştirildi....!!!");

SQL Komutu;

SqlConnection baglan = new SqlConnection("Data Source=admin(admin=bilgisayarımızın adıdır)\\SQLEXPRESS;initial Catalog=deneme ;integrated security=sspi"); Response.Write("bağlantı başarılı bir şekilde gerçekleşti"); baglan.Close();

COMMAND NESNESİ

Form sayfası yüklendiğinde;

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("select * from ailebilgileri", baglanti); alinan_veri = komut.ExecuteReader(); baglanti.Close(); Response.Write("bağlantı başarılı bir şekilde gerçekleştirildi....!!! ve veriler command nesnesi ile okundu....!!!!");

DATAREADER NESNESİ

Form sayfası yüklendiğinde;

Page 2: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 2

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("select * from ailebilgileri", baglanti); OleDbDataReader alinan_veri; alinan_veri = komut.ExecuteReader(); while (alinan_veri.Read()) { Response.Write(alinan_veri["anneadi"] + "<br>"); }

FORM NESNELERİNİ KULLANARAK VERİTABANINDAN VERİ ÇEKMEK

Button click olayına; (Forma Bir button ve bir de textbox gerek.)

string koşul; koşul = TextBox1.Text; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("select * from ailebilgileri where anneadi like '%" +koşul+ "%'", baglanti); OleDbDataReader alinan_veri; alinan_veri = komut.ExecuteReader(); while (alinan_veri.Read()) { Response.Write (alinan_veri["anneadi"] + "&nbsp;" + alinan_veri["babaadi"] + "&nbsp;" + alinan_veri["hobileri"] + "&nbsp;" + "<br>");

}

ÇİFT KOŞULA BAĞLI OLARAK VERİTABANINDAN VERİ ÇEKMEK

Veritabanı:

Form Görüntüsü:

Page 3: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 3

Button click olayına; (Forma Bir button ve 2 de textbox gerek.)

string Adı, Soyadı; Adı = TextBox1.Text; Soyadı = TextBox2.Text; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("select * from OgrenciBilgileri where ad Like '%" + Adı + "%' AND soyad Like '%" + Soyadı + "%'", baglanti); OleDbDataReader alinan_veri; alinan_veri = komut.ExecuteReader(); while (alinan_veri.Read()) { Response.Write(alinan_veri["ad"] + "&nbsp;" + alinan_veri["soyad"] + "&nbsp;" + alinan_veri["yaş"] + "&nbsp;" + "<br>"); }

VERİTABANINA VERİ EKLEMEK (INSERT INTO OLAYI)

//using system.data;

//using system.data.OleDb; eklemeyi unutmayın!!!!!!!!!

Sayfa Yükleme Olayına;

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut = new OleDbCommand("INSERT INTO OgrenciBilgileri (ad, soyad) Values ('Ahmet', 'Can')", baglanti);

Page 4: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 4

komut.ExecuteNonQuery(); Response.Write("Veriler Başarılı Bir Şekilde Veritabanına Eklendi.");

Sql Veritabanını Kullanarak Veritabanına Veri Eklemek;

// usins system.data; //using system.data.sqlclient; Eklemeyi Unutmayın. SqlConnection baglan = new SqlConnection("Data Source=admin\\SQLEXPRESS;initial Catalog=master (Veritabanı adı);integrated security=sspi"); baglan.Open(); SqlCommand komut = new SqlCommand("insert into OgrenciBilgileri(Adı,Soyadı) values ('Meral','Aktaş')", baglan); komut.ExecuteNonQuery(); Response.Write("Veriler başarılı bir şekilde veritabanına eklendi!"); baglan.Close();

FORM ELEMANLARINI KULLANARAK VERİTABANINA VERİ EKLEMEK

Forma (bir buton, 4 tane textbox ve 1 tane de label ekleyelim)

Buton click olayına;

//using system.data;

//using system.data.OleDb; eklemeyi unutmayın!!!!!!!!!

string ad, soyad, yaş, doğumtarihi; ad = TextBox1.Text; soyad = TextBox2.Text; yaş = TextBox3.Text; doğumtarihi = TextBox4.Text; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("insert into OgrenciBilgileri (ad,soyad,yaş,doğumtarihi) values ('" + ad + "', '" + soyad + "', '" + yaş + "', '" + doğumtarihi + "')", baglanti); komut.ExecuteNonQuery(); Label1.Text=("Bilgileriniz Başarılı bir şekilde veritabanına kaydedildi."); baglanti.Close();

Page 5: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 5

VERİTABANINDA VERİ GÜNCELLEMEK (UPDATE SET OLAYI) buraya kadarrrrr

Sayfa yüklendiğinde yazılacak kod (Sayfaya bir tane Label eklenecektir.);

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("UPDATE ailebilgileri SET anneadi='fatma' where anneadi like 'islim'", baglanti); int updatesayi; updatesayi = komut.ExecuteNonQuery(); Labbel1.Text=(updatesayi + "&nbsp;" + "kayıt güncellendi"); baglanti.close();

FORM ELEMANLARINI KULLANARAK VERİTABANINDA VERİ GÜNCELLEMEK

Ekran Görüntüsü;

Veritabanımız;

Button click olayına; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open();

Page 6: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 6

OleDbCommand komut; komut = new OleDbCommand("UPDATE OgrenciBilgileri SET ad='" + TextBox1.Text + "', soyad='" + TextBox2.Text + "', notu='" + TextBox3.Text + "', okulno='" + TextBox4.Text + "' WHERE soyad='" + TextBox5.Text + "'", baglanti); komut.ExecuteNonQuery(); baglanti.Close();

VERİTABANINDA VERİ SİLMEK (DELETE OLAYI)

Sayfa yüklenme olayına (Sayfaya sadece bir tane label eklenecektir.);

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("DELETE From ailebilgileri Where anneadi='islim'", baglanti); int updatesayi; updatesayi = komut.ExecuteNonQuery(); Label1.Text = (updatesayi + "&nbsp;" + "Kayıt silindi"); baglanti.Close();

FORM ELEMANLARINI KULLANARAK VERİTABANINDA VERİ SİLMEK

Forma; (Bir textbox ve bir button eklenecek.)

Veritabanı;

Page 7: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 7

Button Click Olayına; OleDbConnection baglan = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme.mdb")); baglan.Open(); OleDbCommand uygula = new OleDbCommand("Delete From OgrenciBilgileri Where ad='" + TextBox1.Text + "'", baglan); uygula.ExecuteNonQuery(); baglan.Close();

DATAADAPTER VE DATASET KAVRAMLARI VE UYGULAMASI

Uygulama 1:

Forma (1 adet gridwiev eklenecek);

Sayfa Yükleme Olayına (Page_Load);

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbDataAdapter da = new OleDbDataAdapter("Select * From OgrenciBilgileri", baglanti); DataSet ds = new DataSet(); da.Fill(ds, "OgrenciBilgileri");

Page 8: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 8

GridView1.DataSource = ds; GridView1.DataBind(); Baglanti.close();

Uygulama 2:

Forma (1 adet gridview ve 1 adet Button eklenecek);

Button_Click Olayına;

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbDataAdapter da = new OleDbDataAdapter("Select * From OgrenciBilgileri", baglanti); DataSet ds= new DataSet(); da.Fill(ds, "OgrenciBilgileri"); GridView1.DataSource = ds; GridView1.DataBind(); Response.Write("Tüm veriler başarılı bir şekilde gösterildi.");

COMMAND NESNESİ VE GRİDWİEV GÖSTERİM UYGULAMASI

Forma (1 adet gridwiev eklenecek);

Sayfa Yükleme Olayına (Page_Load);

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbCommand komut = new OleDbCommand ("Select * From OgrenciBilgileri", baglanti);

OleDbDataReader dr = komut.ExecuteReader(); GridView1.DataSource = dr; GridView1.DataBind();

ÜYE KAYDI FORMU

Veritabanımız;

Page 9: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 9

Ekran Görüntüsü;

Button Click Olayına;

string Adınız, Soyadınız, EMailAdresiniz, KullanıcıAdınız, Şifreniz; Adınız = TextBox1.Text; Soyadınız = TextBox2.Text; EMailAdresiniz = TextBox3.Text; KullanıcıAdınız = TextBox4.Text; Şifreniz=TextBox5.Text; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/UyelikFormu.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("insert into Uyeler (Adınız,Soyadınız,EMailAdresiniz,KullanıcıAdınız, Şifreniz) values ('" + Adınız + "', '" + Soyadınız + "', '" + EMailAdresiniz + "', '" + KullanıcıAdınız + "', '" + Şifreniz + "')", baglanti); komut.ExecuteNonQuery(); Label1.Text = ("Bilgileriniz Başarılı bir şekilde veritabanına kaydedildi."); baglanti.Close();

*ÜYE KAYDI LOGİN İŞLEMLERİ*

Login Girişi;

Page 10: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 10

Veritabanı;

Buton_Click Olayına;

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA Source=" + Server.MapPath("App_Data/Yonetici.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("select * From YoneticiGirişi Where KullanıcıAdı='"+TextBox1.Text+"' and Şifre='"+TextBox2.Text+"'", baglanti); OleDbDataReader alinan_veri; alinan_veri = komut.ExecuteReader(); if (alinan_veri.Read()) { Response.Redirect("YoneticiSayfasi.aspx"); } else { Label1.Text=("Kullanıcı adı veya şifre yanlış");

}

TÜM VERİTABANI İŞLEMLERİNİN (VERİ ÇEKMEK, VERİ EKLEMEK, VERİ

GÜNCELLEMEK VE VERİ SİLMEK) BİR ARADA UYGULANMASI

1) Bu uygulamamızda Web sitemizi dört textbox, dört buton ve bir tanede GridView

yerleştirelim.

Page 11: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 11

Veritabanı;

protected void Button1_Click(object sender, EventArgs e) { string Ad, Soyad, Adres, Yaş; Ad = TextBox1.Text; Soyad = TextBox2.Text; Adres = TextBox3.Text; Yaş = TextBox4.Text; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme1.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("insert into OgrenciBilgileri (Ad,Soyad,Adres, Yaş) values ('" + Ad + "', '" + Soyad + "', '" + Adres + "', '" + Yaş + "')", baglanti); komut.ExecuteNonQuery(); Label1.Text = ("Bilgileriniz Başarılı bir şekilde veritabanına kaydedildi."); baglanti.Close();

Page 12: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 12

} protected void Button2_Click(object sender, EventArgs e) { string Ad, Soyad, Adres, Yaş; Ad = TextBox1.Text; Soyad = TextBox2.Text; Adres = TextBox3.Text; Yaş = TextBox4.Text; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme1.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("DELETE From OgrenciBilgileri Where Ad='+ Ad +'", baglanti); komut.ExecuteNonQuery(); Label1.Text = ("Adı "+Ad+" veri başarılı bir şekilde silindi."); baglanti.Close(); } protected void Button3_Click(object sender, EventArgs e) { string Ad, Soyad, Adres, Yaş; Ad = TextBox1.Text; Soyad = TextBox2.Text; Adres = TextBox3.Text; Yaş = TextBox4.Text; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme1.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("Update OgrenciBilgileri Set Yaş='"+Yaş+"' Where Ad='" + Ad + "'", baglanti); komut.ExecuteNonQuery(); Label1.Text = ("Adı "+Ad+" olan kişinin Yaşı= "+Yaş+" olarak güncellendi"); baglanti.Close(); } protected void Button4_Click(object sender, EventArgs e) { string Ad, Soyad, Adres, Yaş; Ad = TextBox1.Text; Soyad = TextBox2.Text; Adres = TextBox3.Text; Yaş = TextBox4.Text; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme1.mdb")); baglanti.Open(); OleDbCommand komut; komut = new OleDbCommand("Select * From OgrenciBilgileri", baglanti);

Page 13: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 13

OleDbDataReader veri; veri=komut.ExecuteReader(); GridView1.DataSource = veri; GridView1.DataBind(); Label1.Text = ("Veriler başarılı bir şekilde DataGrid'te gösterildi."); baglanti.Close(); }

VERİTABANINA KULLANICI EKLERKEN AYNI KULLANICI ADINDA BİR

KULLANICININ OLUP OLMADIĞINI KONTROL EDEN KODUMUZ

Forma (1 adet Button ve 2 adette TextBox Eklenecektir.)

Button_Click Olayına;

OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("App_Data/Mesajlarim.mdb")); baglanti.Open(); OleDbCommand komut = new OleDbCommand("select* from Mesajlar where Ad='"+TextBox1.Text+"'", baglanti); OleDbDataReader dr; dr = komut.ExecuteReader(); if (dr.Read()) { Response.Write("bu isimde bir kulanıcı adı vardır. lütfen başka bir kullanıcı adı belirleyiniz"); } else { OleDbConnection baglan; baglan = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("App_Data/Mesajlarim.mdb")); baglan.Open(); OleDbCommand kmt = new OleDbCommand("insert into Mesajlar (Ad, Soyad) Values ('"+TextBox1.Text+"', '"+TextBox2.Text+"')", baglan); kmt.ExecuteNonQuery(); Response.Write("Yeni Kullanıcınız müthiş bir şekilde kaydedildi"); baglan.Close(); }

Page 14: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 14

!!!!ASP FLASH EKLEME!!!!

Önce flash kontrolü indirilerek daha sonra toolbox-------sağ tıkla--------choose items ten flash

kontrolü eklenilir.Flashcontrolfor.net olarak googleden aratılır.)

MAİL GÖNDERME KODU (YAPTIĞINIZ SİTE ÜZERİNDEN MAİL GÖNDERMEMİZE

YARAYAN KOD BLOĞU)

Form Tasarımı:

Sayfaya (4 tane TextBox ve 1 tane de Button Eklenecektir.) // Using System.Net; // Using System.Net.Mail; Eklemeyi Unutmayın. protected void Button1_Click(object sender, EventArgs e) { MailMessage mail = new MailMessage(); // Mail sınıfını Kullanıyoruz. mail.To.Add(TextBox1.Text); //gönderilecek olan mail adresi mail.From = new MailAddress(TextBox2.Text); //kimden gönderilecek. mail.Subject = "ardalartarim.com üzerinden... Adı: " + TextBox3.Text; //mailin konusu... txtad adlı texboxtan da ismini aldırdım. kaldırabilirsiniz... mail.Body = TextBox4.Text + "<br/><b>Gönderenin epostası:</b>" + TextBox2.Text; //mailin içeriği. txtmesaj ve txteposta textboxları kullandım. mail.IsBodyHtml = true; //html kodlarına izin verilsin. SmtpClient client = new SmtpClient("smtp.gmail.com", 587); //gmail smtp adresi tanımlaması client.EnableSsl = true; // Gmail için sslin aktif olması gerekiyor. NetworkCredential credentials = new NetworkCredential("[email protected]", "ardalar47"); //gmail kullanıcı adı ve şifre... Şifre bölümünü değiştirin(***) client.Credentials = credentials; try { client.Send(mail); Response.Write("Mesaj gönderildi. Teşekkür ederiz"); } catch (Exception hata) { Response.Write(hata); //hata ayıklama ile hata olduğunda hata mesajı yazdırılacak. }

TextBox1.Text

TextBox2.Text

TextBox3.Text

TextBox4.Text

Page 15: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 15

}

DROPDOWNLİST’TEN SEÇİLEN BİR İLİN İLÇELERİNİN GÖSTERİLMESİ

Forma (2 adet dropdownlist, App_Data altına ise Örnek sadece bir il seçildiğinde o ile ait

ilçeler dropdownlist2 de gösterileceği için İller ve İlçeler adında iki tane de veritabanı tablosu

eklenecektir.)

Formumuz;

Not: İller kısmına istenilirse page_load’a bağlantı sağlanıp dropdownliste iller gösterilebilir.

Kodumuz; protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { if (DropDownList1.SelectedIndex == 1) { OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/ilçeler.mdb")); baglanti.Open(); OleDbCommand komut = new OleDbCommand("select * from ilçeler", baglanti); OleDbDataReader dr = komut.ExecuteReader(); while (dr.Read()) { ListItem item = new ListItem(); item.Text = dr["ilçeadı"].ToString(); DropDownList2.Items.Add(item); } dr.Close(); baglanti.Close(); } }

Ekran Çıktısı;

TÜRKÇE-İNGİLİZCE SÖZLÜK UYGULAMASI

Page 16: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 16

Veritabanımız;

Formumuz;

Kodumuz; // Using System.Data; // Using System.Data.OleDb; Eklemeyi unutmayınız; OleDbConnection baglanti; baglanti = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE=" + Server.MapPath("App_Data/deneme.mdb")); baglanti.Open(); OleDbDataAdapter da = new OleDbDataAdapter("Select * From OgrenciBilgileri where ingilizce like '%" + TextBox1.Text + "%'", baglanti); DataSet ds = new DataSet(); da.Fill(ds, "OgrenciBilgileri"); GridView1.DataSource = ds; GridView1.DataBind(); baglanti.Close();

LABELDE KAYIT SAYILARINI GRİDVİEW’DE İSE KAYITLARI GÖSTEREN C#

KODU

Formumuz;

Page 17: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 17

Kodumuz; protected void Page_Load(object sender, EventArgs e) { SqlConnection baglanti; baglanti = new SqlConnection("Data Source=Admin\\sqlexpress; initial catalog=Baglan; integrated security=true"); baglanti.Open(); SqlCommand komut = new SqlCommand("Select count(*) From Uyekayit", baglanti); object sayi=komut.ExecuteScalar(); Label1.Text = Convert.ToString(sayi); baglanti.Close(); SqlConnection baglanti1; baglanti1 = new SqlConnection("Data Source=Admin\\sqlexpress; initial catalog=Baglan; integrated security=true"); baglanti1.Open(); SqlCommand komut1 = new SqlCommand("Select count(*) From UyeSayisi", baglanti1); object sayi1 = komut1.ExecuteScalar(); Label2.Text = Convert.ToString(sayi1); baglanti1.Close(); } protected void Button1_Click(object sender, EventArgs e) { SqlConnection baglanti; baglanti = new SqlConnection("Data Source=Admin\\sqlexpress; initial catalog=Baglan; integrated security=true"); baglanti.Open(); SqlCommand komut = new SqlCommand("Select * From Uyekayit", baglanti);

Page 18: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 18

SqlDataReader dr = komut.ExecuteReader(); GridView1.DataSource = dr; GridView1.DataBind(); baglanti.Close(); }

VERİ ERİŞİM KONTROLLERİ (DATA SOURCE KONTROLLERİ)

1. AccessDataSource Kontrolü: (SqlDataSource Kontrolü içinde aynı

mantık söz konusudur.)

GridView

ASP.NET 1.0 ve 1.1 ile geliştirdiğimiz web uygulamalarında sıkça kullandığımız bir kontrol olan "DataGrid", yerini daha

geliştirilmiş olan "GridView" kontrolüne bıraktı. Aslına bakarsanız ASP.NET 2.0 "DataGrid" kontrolüne hala sahip ve

ASP.NET 1.1 projelerinizde kullandığınız DataGrid kontrolüne de hala destek vermekte. ASP.NET 2.0'ın sahip olduğu

DataGrid kontrolünde de bir takım gelişmeler var. Örneğin tema yapısına ve "AccessDataSource", "XmlDataSource" gibi

yeni Data Source kontrollerine destek veriyor.

Peki "GridView" kontrolünün "DataGrid" kontrolüne göre avantajları neler:

GridView kontrolü, DataGrid kontrolünün aksine, mobil tarayıcılar tarafından da gayet sağlıklı biçimde

görüntülenebiliyor.

GridView kontrolüne, "Seç", "Düzenle", "Sil" gibi butonlar otomatik olarak ekletilebiliyor.

GridView kontrolü üzerinde, bir satırı güncellemek ve ya silmek için "hiç" kod yazmanız gerekmiyor.

GridView kontrolü üzerinde sıralama işlemi yapmak için "hiç" kod yazmanız gerekmiyor.

AccessDataSource

Bizi OLEDB ile bağlantı oluşturmak, SQL cümlelerini kodun içine yazmak gibi birçok dertten kurtaran bir kontrol:

AccessDataSource.

AccessDataSource kullanarak veritabanınızdaki bilgilerinizi GridView, DataGrid, DetailsView, FormView, Repeater gibi

kontroller üzerine göstermek, düzenlemek, silmek gibi işlemler için hemen hemen hiç kod yazmanıza gerek yok. Hatta

az sonra örneğimizde de göreceğiniz üzere; hiç kod yazmanızı gerektirmeyecek senaryolar bile olabilir.

Peki teknik olarak AccessDataSource kontrolünü nasıl tanımlayabiliriz? Sanırım en uygun tanım "Access veritabanı

(Access kullanılarak geliştirilmiş veritabanı katmanı diyerek genelleyebiliriz) ile iş katmanımız arasındaki iletişimi

sağlayan .NET Framework 2.0 ile birlikte gelen yeni data kontrolüdür" olacaktır.

İki kontrolün ortaklaşa kullanımı ile ilgili örnek

Şimdi bir örnek yapalım ve bu örneğimiz az sonra oluşturacağımız Access veritabanında bulunan "Kullanici lar" tablomuzdaki kayıtları düzenlememizi ve silmemizi sağlasın. Öncelikle Access uygulamamızı açarak veritabanımızı, tablomuzu ve kolonlarını oluşturalım:

Page 19: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 19

Oluşturmuş olduğumuz tabloyu "Kullanicilar" ismi ile kaydettim. Dikkat ettiyseniz "AutoNumber" alanının etrafını çizdim; çünkü kayıt düzenleme ve silme işlemlerimizde kullanacağımız "AccessDataSource" kontrolü (SqlDataSource kontrolü de aynı şekilde) düzenleme ve silme işlemleri için "Key" özelliğinde bir sütun istiyor.

Oluşturduğumuz veritabanını "Add Existing Item" seçeneği ile "App_Data" klasörümüze ekleyelim:

Page 20: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 20

Sırasıyla GridView ve AccessDataSource kontrollerini ekleyip, ilgili özelliklerini verelim:

Page 21: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 21

GridView kontrolünü sayfamıza sürüklediğimizde, "Smart Tag" ekranı otomatik olarak açılacaktır:

"Smart Tag" ekranında, "Choose Data Source" bölümünde, "New Data Source..." seçeneğini seçip, gerekli adımları izleyerek yeni bir AccessDataSource oluşturalım: İlk ekranda bizden istenen "Data Source Type" olarak "Access Database" seçeneğini seçtim. Bu seçim, bizim için yeni bir "AccessDataSource" kontrolü oluşturacak. Ayrıca DataSource ID'si olarak da "dataSourceKullanicilar" yazdım:

Page 22: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 22

İşlemimi onayladığımda, karşıma MDB dosyamın nerede olduğunu soran yeni bir ekran çıktı:

"Browse" butonuna tıkladığımda da, projemin içeriğini gösteren yeni bir ekran ile karşılaştım ve bu ekranda da projeme "db1.mdb" olarak eklediğim dosyayı seçtim:

Page 23: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 23

İşlemi onayladığımda, yine MDB dosyamın nerede olduğunu soran ekrana geri döndüm ve dosya yolunun yazılı olduğunu gördüm: Not: Dosya yolunda bulunan " ~ " işareti .NET Framework için projenin yolu ile eş anlamlıdır.

Şimdi bu ekrandaki işlemimizi de onaylayalım ve bir sonraki ekranımız olan "Select" cümlemizin seçileceği ekrana geçelim. "Select" cümlemizi yazacağımız ekran aşağıdaki gibi olacaktır:

Page 24: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 24

Görmüş olduğunuz gibi Access veritabanımızdaki tablomuz, tablomuzun sahip olduğu alanlar gibi bilgiler otomatik olarak alındı. Şimdi tüm bilgileri çekecek olan "Select" cümlemizi oluşturalım:

Page 25: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 25

Artık "Select" cümlemize sahibiz. Not: Ekranda görünmekte olan " Return only unique rows " seçeneğini seçmeniz durumunda, Select cümlenizin içerisine "DISTINCT" kelimesi eklenir. Ayrıca "Order By..." butonuna tıklanarak sıralama işlemi ile ilgili bilgiler "Select" cümlesine eklenebilir ve "Where..." butonuna tıklanarak da "Select" cümlesi içerisinde yer alan "Where" ifadesi oluşturulabilir. Şimdi yapmamız gereken "Düzenle" ve "Sil" cümlelerini oluşturmak. Bunun için ekranda görünen "Advanced" butonuna tıklayacağız ve karşımıza yeni bir ekran çıkacak:

Page 26: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 26

Karşımıza 2 seçenek çıktı. Bunlardan ilki ekle, düzenle ve sil SQL cümlelerimizin oluşturulup oluşturulmayacağı. İkinci seçenek ilk seçeneği seçmediğiniz sürece aktif olmayan bir seçenektir. İkinci seçeneğin seçilmesi durumunda, AccessDataSource kontrolü düzenlemek istediğimiz satırın en son "Select" işleminden sonra başka birisi tarafından güncellenip güncellenmediğini kontrol eder ve güncelleme varsa kullanıcıyı uyarır. Makalede bu konuya ayrıntılı olarak girmeyeceğim. Şimdi yalnızca ilk seçeneği işaretleyip "OK" butonuna basıyorum:

Page 27: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 27

"Select" cümlemizi oluşturduğumuz ekrana geri döndük. Şimdi "Next" butonuna basıp bir sonraki ekranımız olan "Test" ekranına geçelim:

Page 28: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 28

"Select" cümlemizi test etmek için "Test Query" butonuna basalım:

Page 29: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 29

Sorgumuz hiçbir hata almadan çalıştı. Hiç kayıt olmadığı için hiç kayıt getirmemesi tabi ki normal. "Finish" butonuna basarak işlemi sonlandıralım ve sayfamızı görelim:

Page 30: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 30

Görmüş olduğunuz gibi, GridView kontrolümüz tablomuzdaki alanlara göre kolonlarına otomatik olarak sahip oldu, AccessDataSource kontrolümüz otomatik olarak oluşturuldu ve "Smart Tag" ekranına da yeni seçenekler geldi. Şimdi sayfalama, sıralama, düzenleme ve silme işlemlerini, "Smart Tag" ekranındaki seçenekleri aşağıdaki gibi seçerek aktif hale getirelim:

Page 31: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 31

GridView kontrolümüze yeniden baktığımızda; Sayfalama satırının eklendiğini, "Edit", "Delete" butonlarının otomatik olarak eklendiğini ve sütun başlıklarının otomatik olarak sıralama işlemlerini gerçekleştirecek linkler halini aldıklarını görürüz:

Page 32: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 32

Sıra geldi İngilizce olarak oluşturulan butonlarımızı Türkçe olarak değiştirmeye. Bunun için "Smart Tag" ekranındaki "Edit Columns" seçeneğine tıklamamız gerekmekte:

Page 33: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 33

Açılan ekranda "CommandField" sütununu seçelim:

Page 34: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 34

Gerekli özellikleri değiştirelim: Not: (Ben bu ekranda ButtonType özelliğini de "Link" değil, "Button" olarak değiştirdim. Bu nedenle GridView kontrolümüzdeki butonlar artık link şeklinde değil, buton şeklinde gözükecektir) Not: Özelliklerin bulunduğu ekranda, aşağıda görmüş olduğunuz ekran görüntüsünde görünende daha fazla Türkçeleştirme seçeneği vardır. (NewText, InsertText, SelectText, vs.)

Page 35: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 35

GridView kontrolümüze tekrar bakalım:

Page 36: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 36

Artık butonlarımız Türkçe yazılara sahipler. Veritabanına birkaç kayıt atıp, sayfamızı çalıştırmamızın zamanı geldi. Öncelikle kayıtlarımızı ekleyelim:

Page 37: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 37

Şimdi de sayfamızı açalım:

Page 38: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 38

"Coskun" kullanıcısı üzerine düzenle işlemi yapmak için "Düzenle" butonuna tıklayalım:

Page 39: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 39

Görmüş olduğunuz gibi ilgili satır "Düzenle" moduna geçti, sol tarafındaki butonlar "Kaydet" ve "İptal" olarak değişti, ayrıca "Key" olarak tanımladığımız "KullaniciID" harici alanlarda TextBox kontrolüne dönüştü. Şimdi kayıt üzerinde birkaç değişiklik yapalım:

Page 40: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 40

Kaydet butonuna basalım: Not: Kaydetme işlemi sırasında "Operation must use an updatable query." şeklinde bir hata alırsanız, MDB dosyanıza "MakinaIsmi\ASPNET" kullanıcısının yazma hakkı olup olmadığını kontrol etmeli ve eğer hakkı yok ise bu hakkı tanımlamalısınız.

Page 41: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 41

Kayıt işlemi başarıyla tamamlandı. Şimdi bir tane kayıt silelim. Ben 3 numaralı kaydı sileceğim. Sil butonuna bastım:

Page 42: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 42

Ve artık 3 numaralı kaydımız yok. Bir de veritabanından bakalım:

Page 43: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 43

Görmüş olduğunuz üzere kayıt veritabanında da görünmemekte. Sıra geldi sıralama işlemlerine. Kayıtlarımız şu anda veritabanındaki sıralarında. Kayıtlarımızı "AdSoyad" alanına göre sıralamak için yapmamız gereken tek şey başlığına tıklamak:

Hiç kod yazmadan, sıralama işlemini gerçekleştirdik. Eğer tersten sıralama yapmak istersek de, "AdSoyad" alanının başlığına tekrar yazmamız yeterli:

Page 44: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 44

UYGULAMA (GridView’de seçilen bir kayıtın ad kısmının textbox ta gösterilmesi)

Sayfaya (1 adet Accessdatasource, 1 adet gridview ve 1

adet textbox ekleyelim)

Bu uygulamada ilk başta sayfaya bir adet accessdatasource, bir adet gridview ve 1 adet textbox eklenecek ve gridview Accessdatasource bağlanıldıktan sonra aşağıdaki işlemler yapılacaktır.

GridView’i dan Enabled Selection seçeneğini seçiniz. Böylelikle seçtiğimiz satırı belirlemiş

Page 45: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 45

olacağız.

Daha sonra GridView nesnemizi çift tıklayarak GridView1_SelectedIndexChanged olayına aşağıdaki kodumuzu yazalım. protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)

{ int deger; deger = GridView1.SelectedIndex; TextBox1.Text = GridView1.Rows[deger].Cells[2].Text; TextBox2.Text = GridView1.Rows[deger].Cells[3].Text; } Böylece seçtiğiz satıra ait Ad kolonu textbox’a aktarılacaktır.

REPORTVIEWER ( )

Raporlarımızı görüntülemek için kullanılan bir kontroldür.

UYGULAMA

Page 46: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 46

1) Yeni bir Web sayfası açınız. Solution Explorerda bulunan projemizin ismini sağ tıklayarak Add New Item seçeneğini tıklayınız.

2) Karşımıza gelen Add New Item penceresinden DataSet objesini seçerek Add butonuna basınız. Karşımıza gelen uyarı penceresinde Yes diyerek geçelim. Solution explorerda App_Code klasörü oluşacak ve içerisine DataSet1.xsd dosyasını eklendiğini göreceksiniz. Eklendikten sonra karşımıza bağlantı sihirbazı gelecektir. Sql Server dan veritabanımızı tıklayıp veritabanımızda bulunan tabloları gösterelim. Hangi tablolara ait rapor oluşturmak istiyorsak o tabloyu sürükle-bırak mantığı ile ekranımıza taşıyalım. Tablo ekledikten sonra karşımıza tablonun kolonları gelecektir.

3) Yine projemizin üstünde sağ tıklayarak bu sefer Report nesnesini ekleyelim.

Page 47: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 47

4) Report nesnemizi ekledikten sonra karşımıza Report Designı gelecektir. Kolonlarımızı DataSource kısmında görmemiz gerekiyor.

Yukarıda Ekranı görebilmemiz için New----DataSet sekmesini tıklamamız gerekiyor. 5) Kolonlardan Ad, Soyad ve Adres kolonlarını sürükleyerek tasarım alanına koyunuz.

6) Default.aspx sayfasına ReportViewer kontrolü ekleyiniz. Chose Report kısmından Report.rdlc dosyanızı seçiniz.

Page 48: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 48

7) Kodumuzu çalıştırdığımızda kayıdın geldiğini görebiliriz. Report tasarım alanına gelerek tasarım alanına chart (grafik) ekleyelim.

8) Grafik tipini değiştirerek istediğiniz görüntüyü elde edebilirsiniz. Tasarım alanına eklenin grafik’i sağ tıklayarak Chart type’ı belirleyiniz. Biz örneğimizde Simple Column seçeneğinden göstereceğiz.

Page 49: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 49

9) Grafiğimizi bir kez tıkladığımızda grafik’in kenarlarında alanlar oluşur. Bu alanlar üst tarafda bulunan alan önemlidir. Burası gelen datalarımızın grafik şeklinde oluşmasını sağlar. Sağ taraf ise hangi rengin kime ait olduğunu gösterecek. Ad ve yas data kolonlarını sürükleyip bırakınız.

10) Default.aspx sayfamızı çalıştırarak grafiğimizin oluşması sağlanacaktır.

Page 50: ASP.NET ORTAMINDA C# VERİTABANI …kagan.ahievran.edu.tr/kullanicidosya/files/asp_net...Öğr. Gör. Müslüm ÖZTÜRK Sayfa 1 ASP.NET ORTAMINDA C# VERİTABANI UYGULAMALARI VERİTABANINA

Öğr. Gör. Müslüm ÖZTÜRK Sayfa 50

Böylelikle basit bir düzeyde raporlamada ReportViewer’ı kullanabiliriz.

NAVİGASYON BURDAYIMMM!!!!!!!!!!!!!!