Ajax kontrolleri bloglarına devam edeceğim,bu blog ve bundan sonraki bir kaç blogtada veritabanı ile ilgili işlemlerinede yer vermek lazım diye düşündüm.Sırasıyla Access,MsSql ve MySql veritabanı tiplerine bağlantı,kayıt ve sorgulamaları ile ilgili basit bilgiler paylaşacağım.
Gayet uzun olacak bu blogun sonuna kadar okumaya devam ettiğinizde artık Ms Access veritabanınızı Asp.net web sayfalarınızda kullanmaya verilerinizi kaydetmeye hemen başlayabileceksiniz.Bu işin dahada uzun terimleri, tanımları varsada bunları ara bloglarda anlatmaya niyetliyim.Örneğin bir veritabanı tasarımı konusunu,arayüzleri, iş katmanları gibi detayları, bu anlatacağım uygulamadan sonra yine buradan okuyabilirsiniz.
'------Buradada SampleSave buttonun Click olayında Ms Accesse kayıt için gerekli parametreler
Protected Sub SampleSave_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles SampleSave.Click
Try
openAccessConnection()
Dim cmd As New OleDbCommand("insert into SampleText(SampleText,SampleMultiText) values(@SampleText,@SampleMultiText)", myAccessConnection)
cmd.CommandType = CommandType.Text
cmd.Parameters.Add("@SampleText", OleDbType.VarChar).Value = SampleText.Text
cmd.Parameters.Add("@SampleMultiText", OleDbType.VarChar).Value = SampleMultiText.Text
cmd.ExecuteNonQuery()
closeAccessConnection()
Catch ex As Exception
Response.Write(ex.Message)
closeAccessConnection()
End Try
Response.Redirect("Kayıt_tamamlandığında_yönlenecek_sayfa.aspx")
End Sub
End Class
Gayet uzun olacak bu blogun sonuna kadar okumaya devam ettiğinizde artık Ms Access veritabanınızı Asp.net web sayfalarınızda kullanmaya verilerinizi kaydetmeye hemen başlayabileceksiniz.Bu işin dahada uzun terimleri, tanımları varsada bunları ara bloglarda anlatmaya niyetliyim.Örneğin bir veritabanı tasarımı konusunu,arayüzleri, iş katmanları gibi detayları, bu anlatacağım uygulamadan sonra yine buradan okuyabilirsiniz.
Başlık şu olmalı :Asp.Net web sayfamızda, Ms Access 2007 kullanarak Visual Basic.Net kodlarıyla bağlantı kurup, veriler eklemek.
Access hala bir çok web sitesinde kullanılmaya devam edilmekte, bence akıllıca dizayn edilirse Access verilerinizi 2 Gb ve ötesinde sorunda çıkarmaz.
1-) İlk adım elbette veritabanı tasarımınızdır.
Bu örnek için hazırladığım Ms Access veritabanı adı SampleDatabase dir.İçerisinde ise SampleText adında bir tablo bulunmakta ve tablo içerisindede yukarıda gördüğünüz veri türleri ile SampleText ve SampleMultiText alanları var.
2-) Bu Ms Access veritabanınızı projeniz içinde AppData klasörü içinde olması gerekli ayrıca web.config dosyamızdada aşağıdaki düzenlemeyi yapmalıyız.
<connectionStrings>
<add name="SamplesDatabaseConnectionString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\SamplesDatabase.accdb;Persist Security Info=True"
providerName="System.Data.OleDb" />
</connectionStrings>
<add name="SamplesDatabaseConnectionString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\SamplesDatabase.accdb;Persist Security Info=True"
providerName="System.Data.OleDb" />
</connectionStrings>
3-) Verileri girmek için bir web forma ihtiyacımız vardı onuda şu şekilde hazırladım.
Dikkat ediniz: TextBox ID leri veritabanımın içeriğindeki alanlarla aynı isimdeler.Bunların dışında SampleSave adında birde button form içinde hazır.Bu kod blogu bana şu şekilde bir form alanı verecektir.
4-) Bu görüntüyü sağladığım web sayfamın Code Behind kısmında artık Access bağlantımı ve verilerimi girmek için gerekli kodları yazmam lazım.Sırasıyla dikkatlice okuyunuz.Ben kod aralarını bölerek anlatmak için çizgiler çekeceğim, kopyala yapıştır yaparsanız bunları dikkate alınız.
'----------------------------------------------
Imports System.Data
Imports System.Data.OleDb
Imports System.IO
Imports System.Data.OleDb
Imports System.IO
'------Bu sınıfların ımport edilmesi gerekli
Partial Class SampleTextSaves
Inherits System.Web.UI.Page
Dim connStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Server.MapPath("App_Data/SamplesDatabase.accdb")
Dim myAccessConnection As New OleDbConnection(connStr)
Inherits System.Web.UI.Page
Dim connStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Server.MapPath("App_Data/SamplesDatabase.accdb")
Dim myAccessConnection As New OleDbConnection(connStr)
'------Burada 2007 accese bağlantı nesnesi oluşturuldu.
Public Sub openAccessConnection()
Public Sub openAccessConnection()
If myAccessConnection.State = ConnectionState.Closed Then
myAccessConnection.Open()
End If
End Sub
myAccessConnection.Open()
End If
End Sub
'------Bağlantı nesnesi açılışı
Public Sub closeAccessConnection()
If myAccessConnection.State = ConnectionState.Open Then
myAccessConnection.Close()
End If
End Sub
'------Bağlantı nesnesi kapanışıIf myAccessConnection.State = ConnectionState.Open Then
myAccessConnection.Close()
End If
End Sub
'------Buradada SampleSave buttonun Click olayında Ms Accesse kayıt için gerekli parametreler
Protected Sub SampleSave_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles SampleSave.Click
Try
openAccessConnection()
Dim cmd As New OleDbCommand("insert into SampleText(SampleText,SampleMultiText) values(@SampleText,@SampleMultiText)", myAccessConnection)
cmd.CommandType = CommandType.Text
cmd.Parameters.Add("@SampleText", OleDbType.VarChar).Value = SampleText.Text
cmd.Parameters.Add("@SampleMultiText", OleDbType.VarChar).Value = SampleMultiText.Text
cmd.ExecuteNonQuery()
closeAccessConnection()
Catch ex As Exception
Response.Write(ex.Message)
closeAccessConnection()
End Try
Response.Redirect("Kayıt_tamamlandığında_yönlenecek_sayfa.aspx")
End Sub
End Class
Visual Basic okunması gayet kolay bir dil yukarıdaki kodlarla komut tiplerini belirttiğim texboxlar artık veri girişine hazırlar.Tüm bu kısa anlatımlarımı bir araya dikkatlice getiriseniz.Asp.Net web sayfalarınızda access kullanarak veri girişlerinize hemen başlayabilirsiniz.Başarılar
Bu Yazının Sponsorları
Yorumlar
Yorum Gönder