Bu dersimizde Asp.NET te silme işleminin anlaşılabilir ve en basit haliyle nasıl yapılacağını göreceğiz. Bu yöntemde mesajlarımız mesajlar.aspx sayfasında listelenecek ve her kaydın sağında Sil linki olacak. Sil linki ile ilgili kaydın tablodaki Kimlik alanı değeri sil.aspx sayfasına yollanacak. Sil.aspx sayfasında yollanan Kimlik değeri alınıp ilgili kayıt silinecek. Aşağıdaki resme bakarsanız hangi sil linkinin üzerine gelirsek sil.aspx e o kaydın kimlik bilgisini gönderiyor.( sil.aspx?kimlik=72 gibi)

Şimdi kodlarımızı verelim. İlk olarak mesajlar.aspx in kodları.
<%@ Import Namespace=”System.data” %>
<%@ Import Namespace=”System.data.oledb” %>
<script runat=”server”>
Sub sil(Src As Object, E As EventArgs)
response.write(“asdasdasd”)
End Sub
Sub Page_Load(Src As Object, E As EventArgs)
Dim sorgu as new OleDbCommand
Dim baglanti As New OleDbConnection
Dim veriler As OleDbDataReader
baglanti.ConnectionString = “Provider=Microsoft.jet.oledb.4.0;data source=” & Server.MapPath(“as1.mdb”)
baglanti.Open()
sorgu.Connection = baglanti
sorgu.CommandText = “select * from Tablo1″
veriler=sorgu.executereader()
GridView1.Datasource=veriler
GridView1.Databind()
baglanti.Close()
end sub
</script>
<html>
<body>
<form runat=”server”>
<asp:GridView ID=”GridView1″ runat=”server” AutoGenerateColumns=”false” GridLines=”none”>
<RowStyle backcolor=”#0099CC”/>
<AlternatingRowStyle backcolor=”#ffffff”/>
<columns>
<asp:TemplateField>
<itemtemplate>
<table width=”258″ border=”0″ cellpadding=”0″ cellspacing=”0″>
<tr>
<td><%# Eval(“yazan”) %>, <%# Eval(“tarih”) %> </td>
<td rowspan=”2″ align=”right”><a href=”sil.aspx?kimlik=<%# Eval(“kimlik”)%>”>Sil</a></td>
</tr>
<tr>
<td><%# Eval(“Mesaj”) %> </td>
</tr>
</table></itemtemplate>
<headertemplate>MESAJ PANOSU</headertemplate>
</asp:TemplateField>
</columns>
</asp:GridView>
</form>
</body>
</html>
mesajlar.aspx te listeleme var sadece. GridView ile Listeleme dersindeki kodlardan tek farkı Sil linki.
<a href=”sil.aspx?kimlik=<%# Eval(“kimlik”)%>”>Sil</a>
kodu ile sil.aspx sayfasına kimlik adında bir değişken yolluyoruz. kimlik değişkeninin değeride Tablo1 deki “Kimlik” alanı. başka bir sayfaya değişken yolarken ? kullanırız,daha sonra değişken ismi ve değeri olur. Yukarıdaki kodları çalıştırdıktan sonra sil.aspx e gönderilen değerlerin her Sil linkinde değiştiğini görürsünüz.
Şimdi de sil.aspx sayfasının kodlarını yazalım.
<%@ Import Namespace=”System.data” %>
<%@ Import Namespace=”System.data.oledb” %>
<script runat=”server”>
Sub Page_Load(Src As Object, E As EventArgs)
Dim sorgu as new OleDbCommand
Dim baglanti As New OleDbConnection
Dim veriler As OleDbDataReader
baglanti.ConnectionString = “Provider=Microsoft.jet.oledb.4.0;data source=” & Server.MapPath(“as1.mdb”)
baglanti.Open()
sorgu.Connection = baglanti
sorgu.CommandText = “delete from Tablo1 where kimlik=@mesajid”
sorgu.parameters.add(“mesajid”, request.QueryString(“kimlik”))
sorgu.executenonquery()
baglanti.Close()
response.Redirect(“mesajlar.aspx”)
end sub
</script>
Bu kodlarda yine veri tabanına bağlandık ve sorgumuza kadar olan yerler yine aynı. Bu sayfanın görevi başka bir sayfadan kendine yollanan kimlik değişkenindeki değeri alıp o kaydı silmek. kimlik değişkeninin değerini
request.QueryString(“kimlik”)
koduyla alıyoruz.(kimlik=72)
sorgu.parameters.add(“mesajid”, request.QueryString(“kimlik”))
koduyla sorgumuzda kullanacağımız mesajid değişkeni oluşturuyoruz. Diğer sayfadan gelen kimlik değişkeninin değeri alıp mesajid değişkenine aktarıyoruz.(Şimdi mesajid=72 oldu)
sorgu.CommandText = “delete from Tablo1 where kimlik=@mesajid”
sorgu cümlesiyle ilgili kimlik alanı 72 olan kaydı bulup siliyoruz.
response.Redirect(“mesajlar.aspx”)
koduyla silme işlemi bittiğinde otomatik olarak mesajlar.aspx sayfasına gidiyoruz(Sayfa Yönlendirme).
Not: Bu kodları çalıştırırken kodları kendi veritabanı ismi,sayfa isimleri ve veritabanındaki alanlara göre düzenleyin. Ayrıca silme işleminde İşlem Güncelleştirilebilir Bir sorgu içermelidir diye bir hata alırsanız şu dersin sonlarına bir göz gezdirin. Bir sonraki derste Silme işlemini Asp.NET’in bize sağladığı imkanlar ile nasıl yapılacağını göreceğiz.







Haziran 3rd, 2010 at 12:52
Çok teşekkürler takipcinizim umarım blog yapmaya kadar sizi takip edebilirim
iyi çalışmalar
Haziran 4th, 2010 at 00:21
hocam bilgileriniz ve özveriniz için cok teşekkür ediyorum bende bir bilişim teknolojileri ögrencisi olarak sizin takipciniz olacagız,bilgilerinizin devam etmesi dilegimizle
Ocak 22nd, 2011 at 22:59
iyi günler öğrenmek için soruyorum veri tabanı internete girilen bütün siteleri kayıt altına alıyor değilmi sonra o verilere nasıl ulaşıyoruz
Ocak 23rd, 2011 at 03:35
Veri tabanını ayrı bir dosya olarak düşünün. Sayfaya yazdığınız kodlarla bu veri tabanına veri kaydedebilir veya burdan veri silebilirsiniz. Şu derse bakabilirsin : http://www.harunucuncu.com/blog/asp-net-veri-tabanina-giris/
Kasım 17th, 2011 at 19:46
Nice! Sadece cevap vermek istedim. Ben iyice yazılan sevdi. Büyük çalışmaya devam edin.