ASP Online Veritabani Islemleri (Access)

Forum, blog, ziyaretci defteri vb web uygulamalarinda muhakkak kullanmaniz gereken sey veritabanidir. Bir cok veritabani mevcut. Fakat en populer olanlari MySQL, MsSQL, Oracle, MS Access..

MySQL, MsSQL, Oracle gibi veritabanlari buyuk projelerde kulllanilmasi gereken veritabanlaridir. ornegin; buyuk ve zincir magazalar (teknosa vb), sanal magazalar vb buyuk kitlelere ulasan ve surekli kullanilan uygulamalarda kullanilmasi gerekir. Fakat access ise daha kucuk uygulamalarda veya projelerde kullanilabilir. ornegin; ziyaretci defteri, kucuk capli forum, bloglar vb.

MS Access bu yuzden ASP kullananlar acisindan en onemli veritabani uygulamasidir. Cunku genel olarak herkes kendine site yaptigi icin bu tip kucuk ve cok islem gerektirmeyen bir veritabani uygulamasi tercih ederler.

Fakat tabii ki MS Access'in de kucuk uygulamalarin veritabani olmasindan kaynaklanan kotu yanlari vardir. ornegin ayni anda 10 ve fazla kullanici sitenize baglandiginda calismasi yavaslamaya baslar, cabuk siser ve boyutu hemen MB'lara ulasabilir (ta ki siz Veritabani Donustur ve Onar aracini kullanana kadar). En kotu ozelligi ise online olarak veritabanina erisilememesidir. MySQL, MsSQL gibi veritabani uygulamalarinin internet uzerinden yonetimini olanakli kilan bir takim yazilimlar mevcut. Fakat MS Access icin boyle bir uygulama mevcut degil ve siz veritabaninizi guncellemek, tamir etmek, degistirmek icin kendi bilgisayariniza cekmeniz gerekir. Bu sirada bir suru sorun yasayabilirsiniz. Baslicalari;

- Sitenize o an baglanan kisilerin erisiminde saglanan izinlerden kaynaklanan degisiklikler sayilmaz.
- Guncellerken yaptiginiz upload isleminden dolayi siteniz hata verebilir.

Bu sorunlari cogaltmak mumkun ama en etkili nedenler bunlar. Lafi artik daha da uzatmadan size MS Access veritabani uzerinde oynamanizi saglayabilecek bir takim kodlari vericem.

Yeni Tablo Olusturmak:

'Baglanti isimli DB baglantimizi olusturdugumuzu varsayiyorum.'

Set YeniTablo = Server.Createobject("Adodb.Recordset")
ytSQL = "Create TABLE TabloAdi (Id AUTOINCREMENT, Metin CHAR(254), Sayi NUMERIC)"
YeniTablo.Open ytSQL, Baglanti, 1, 3

Burda TabloAdi adinda bir tablo yaratiyoruz. Tablo icindeki alanlarida parentez icinde belirttik. Id: otomatik sayi oluyor, Metin: yazi alani (254 karakterli), Sayi: sayi girilebilecek alan.

Tabloya Yeni Alan Eklemek:
'Baglanti isimli DB baglantimizi olusturdugumuzu varsayiyorum.'

Set YeniTablo = Server.Createobject("Adodb.Recordset")
ytSQL = "Alter TABLE TabloAdi ADD COLUMN YeniAlan Text(25);"
YeniTablo.Open ytSQL, Baglanti, 1, 3

Burda ise TabloAdi isimli tablomuza ilk basta Alter Table komutu ile ilk basta tabloyu degistirecegimizi/guncelleyecegimizi belirtiyoruz daha sonra ise YeniAlan isimli Text ve 25 karakterli bir alan ekliyoruz.

Bir Tabloyu Silmek:
'Baglanti isimli DB baglantimizi olusturdugumuzu varsayiyorum.'

Set YeniTablo = Server.Createobject("Adodb.Recordset")
ytSQL = "DROP { TABLE TabloAdi | INDEX index ON TabloAdi } "
YeniTablo.Open ytSQL, Baglanti, 1, 3

"Jet Engine" DROP kullanimini desteklemez. DAO meodunu kullanmaniz gerekmektedir.

Bir sonraki yazida ise Veritabani online tamirini anlatmaya calisacagim.


  • personAyberk Atasay
  • calendar_monthJanuary 30, 2009
  • categoryASP
  • sharepaylaş
  • Eski Yorumlar:
  • mustafa
  • Cok guzel anlatim basarilarinin devaini dilerin.
  • 2009-09-06 00:31:32
  • Hakan
  • peki olusturdugumuz tablonun adini istedigimiz gibi nasil degistirebiliriz ?
  • 2010-07-29 00:16:45
  • Seval
  • Cok guzel ama soyle bir durum var, sadece mssql veri tabanina kayitli olan uzanti ya da sayfalari gostermek istersek veya gostermek istedigimiz sayfalar veritabaninda( MSSQL) yer aliyorsa ne yapacagiz ? Ornek : if sayfa = “” Then call index elseif sayfa Then call sayfa var else response.redirect…… ———– Bu kisimda mssql de bulunan sayfalar sutunun da var mi yok mu ? Bu durum beraberinde acik dogurur mu dogurmaz mi ? Ayrica ne kadar hizli olur bu is ? Tesekkur ederim
  • 2010-07-31 14:52:51