Basit Veritabanı İşlemleri

Veritabanı

Başlangıç düzeyinde hızlı, pratik ve web servisler ile uyumlu tablodan veri getirme ve işleme metodları kullanım şekillerinden bahsedilmiştir.

ÖNEMLİ: Parse edilebilir verilerde katı kurallar mevcuttur bu kurallar SQL yazılırken desteklenen bir takım fonksiyonlardır.

Tablo ve viewler'da kullanabileceğiniz methodlar:

Tek Satır Veri Getirme İşlemi

ÖNEMLİ: GetData(); ve GetSingleData(); metodlarında SQL Sorgularında kolon adlarını belirtmeniz gerekir. Ayrıca SQL Sorgularını BÜYÜK HARFLERLE yazınız.

Web servis kullanarak ajax ile verileri getirme işlemi:

[WebMethod] 
public string TekHaberGetir() 
{ 
  return WebFramework.GetSingleData("SELECT pkID,Baslik,Icerik,Yazar,AnahtarKelimeler,Tarih FROM Haberler WHERE pkID= @pkID", 6); 
}

Web Servis XML Çıktısı:

Framework script kullanılarak verinin parse edilme işlemi:

$("div#haber").empty();
$.sy_ajaxislemyukle({
  servis: sy.ResolveClientUrl("Services/TestServis.asmx/TekHaberGetir"),
  params: "{}",
  doldur: function (veri) {
     var ayir = veri.split('~');
     $("div#haber").append("<label>Haber Adı: </label> " + ayir[1]
       + "<br/>" + ayir[2]);
  }
});

Gelen veri değişkenini ~ ile birbirinden parse işlemi yaptık. Bu işlem bize gelen veriyi bir diziye dönüştürmüş oldu 1~syuksel14~Selahattin Yüksel parse işleminden sonra ise [“1”, “syuksel14”, “Selahattin Yüksel”] olarak değiştirildi bunun kullanımı şu şekildedir degisken[indis] Örnek: ayir[1]= syuksel14 değeri vardır.

ayir dizisinin elemanları:

[0] = “1”, [1] = “syuksel14”, [2] = “Selahattin Yüksel”

ASPX Sayfalarında Kullanım:

protected void Page_Load(object sender, EventArgs e)
{
  Ornek1();
}

Tek satır olarak gelen string bir veri string değişkene atılarak parse işlemi yaptık:

public void Ornek1()
{
  String veri = WebFramework.GetSingleData("SELECT pkID,Baslik,Icerik,Yazar,AnahtarKelimeler,Tarih FROM Haberler WHERE pkID= @pkID", 6);
  string[] ayir = veri.Split('~');
  Response.Write("<p>" + ayir[0] + "<strong> Nolu: " + ayir[1] + "</strong></p>");
}

Birden Fazla Veri Getirme İşlemi

ÖNEMLİ: GetData(); ve GetSingleData(); metodlarında SQL Sorgularında kolon adlarını belirtmeniz gerekir. Ayrıca SQL Sorgularını BÜYÜK HARFLERLE yazınız.

Web servis kullanarak ajax ile verileri getirme işlemi:

[WebMethod]
public List<string> HaberleriGetir()
{
  return WebFramework.GetData("SELECT pkID,Baslik,Icerik,Yazar,AnahtarKelimeler,Tarih FROM Haberler");
}

Web Servis XML Çıktısı:

Framework script kullanılarak verinin sy_ajaxyukle fonksiyonu ile döngü içerisinde otomatik getirme işlemi:

$("ul#haberler").empty();
$.sy_ajaxyukle({
  servis: sy.ResolveClientUrl("Services/TestServis.asmx/HaberleriGetir"),
  params: "{}",
  doldur: function (yanit) {
     $("ul#haberler").append("<strong>" + yanit[1] + "</strong>");
  }
});

ÖNEMLİ: sy_ajaxyukle fonksiyonu liste şeklinde birden fazla verileri getiren fonksiyondur. sy_ajaxislemyukle fonksiyonu sadece tek satır ve update, insert, delete, select ve diğer işlemler için geliştirilmiş bir fonksiyondur.

ASPX Sayfalarında Kullanım:

protected void Page_Load(object sender, EventArgs e)
{
 Ornek1();
 Ornek2();
}
public void Ornek1()
{
  //1. yöntem object olarak foreach döngüsü ile çekme işlemi
  Object verikumesi = WebFramework.GetData("SELECT pkID,Baslik,Icerik,Yazar,AnahtarKelimeler,Tarih FROM Haberler");
  foreach (var obje in (List<string>)verikumesi)
  {
  string[] ayir = obje.Split('~');
  Response.Write("<p>" + ayir[0] + "<strong>" + ayir[1] + "</strong></p>");
  }     
}
public void Ornek1()
{
  String veri = WebFramework.GetSingleData("SELECT pkID,Baslik,Icerik,Yazar,AnahtarKelimeler,Tarih FROM Haberler WHERE pkID= @pkID", 6);
  string[] ayir = veri.Split('~');
  Response.Write("<p>" + ayir[0] + "<strong> Nolu: " + ayir[1] + "</strong></p>");
}

Inner Join Ve Left Join Veri Getirme

GetJoinData metodu liste şeklinde kullanılmaktadır web servis veya ASPX sayfalarında kullanılabilir sorgunuza karşılık tek satırda dönebilir birden fazla satırda dönebilir bu metoda kolon adlarınızı belirtmek zorunda değilsiniz. Ayrıca SQL Sorgularını BÜYÜK HARFLERLE yazınız.

Web servis kullanarak ajax ile verileri getirme işlemi:

[WebMethod]
public List<string> JoinHaberGetir()
{
  return WebFramework.GetJoinData("SELECT T.ADSOYAD, T.EMAIL, K.Baslik FROM Uyeler T INNER JOIN Haberler K ON (T.UYEID = K.Yazar) ORDER BY K.pkID");
  // return WebFramework.GetJoinData("SELECT * FROM Uyeler"); //join cümlesi içermediği için hata verir.
}

Web Servis XML Çıktısı:

JSON Veri Getirme İşlemi

ÖNEMLİ: GetData(); ve GetSingleData(); metodlarında Sadece SELECT cümlesi geçerli GetJSONData(); ise diğerinden farklı olarak bu JSON olarak geri string değer döndürür SELECT, COUNT, INNER JOIN, LEFT JOIN desteklemektedir.

Web servis kullanarak ajax ile verileri getirme işlemi:

[WebMethod]
public string JSONTest()
{
 return WebFramework.GetJSONData("SELECT * FROM Haberler");
}

Web Servis XML Çıktısı:

Framework script kullanılarak json formatında veri getirme:

$("ul#haberler").empty();
$.sy_ajaxjsonyukle({
  servis: sy.ResolveClientUrl("Services/TestServis.asmx/JSONTest"),
  params: "{}",
  doldur: function (veri) {
   $('ul#haberler').append('<strong>' + veri.pkID + '</strong>) ' + veri.Baslik + '<br /></span>');
  }
});

Satır Sayma (Count İşlemi)

GetCountData(); metodu girilen SQL ifadesinde string olarak bir değer döndürür dikkat edilmesi gereken husus yazılan SQL ifadesinde takma isim almalıdır. Ayrıca SQL Sorgularını BÜYÜK HARFLERLE yazınız.

Web servis kullanarak ajax ile verileri getirme işlemi:

[WebMethod]
public string GetCountData(){
 return WebFramework.GetCountData("SELECT COUNT(*) AS SAYI FROM Haberler");
}

Web Servis XML Çıktısı: