Burda esas paylaşmak istediğim nokta çok katmanlı mimarinin bize sunduğu kolaylık ve hızı göze almaktır.

MVC'nin bize sunduğu üç katmandan biraz bahsetmemiz gerekiyor.Model,View Controller;
(Bu katmanlar hakkındada ayrıntılı makaleler yazılacaktır üçüde çok geniş konular olmasından ötürü burda sadece
bir giriş mahiyetinde deyinmek istiyorum.)
Model katmanı: Bizim projemiz ve database'imiz arasındaki işlemleri gerçekleştireceğimiz yer.Burda birçok yöntem
 
kullanılabilir LinqToSql , nHibernate , Ado.net etity framework gibi çok yöntemler olabilir bu size kalmış ben
bu uygulamada Ado.Net entity model kullanmayı tercih ettim .
 
View katmanı:Bu katman bizim ekranlarımızı temsil ediyor yaptımız bütün işlemlerin sonunda kullanıcıya gösterilecek
olan Pages yapısı burdan kontrol ediliyor. 
 
Controller katmanı:Mvc de üzerinde en çok durulması gereken mesele Controller katmanı çünki bizim database
ve viewlarımız arasındaki bütün işlemleri bu katman sağlıyor.Yanlış anlaşılmasın diğer katmanlarda çok önemlidir
biri eksik kalsa diğerleride doru çalışmaz..
Zaten uygulamayı geliştirirken daha net anlaşılıcaktır.


  SELECT deyimi ile elde edilen veriler istenirse sıralanabilir. Sıralama belirtilen bir ya da daha fazla sütuna göre yapılır. Bunun dışında sıralama ASC ( ascending-artan) ya da DESC ( descending-azalan) olarak belirtilebilir. "ORDER BY "sözcüğü verilerin istenilen alan göre sıralı olarak listelenmesini sağlar. Bir örnekle açıklayalım 

SELECT * FROM Ogrenciler ORDER BY Adi 

    Bu örnekte SELECT * FROM Ogrenciler ORDER BY Adi komutlar ile Ogrenciler tablosundaki bütün kayıtlar Adi alanına göre sıralı olarak listelenirler.

Select   * FROM Ogrenciler ORDER BY no DESC

Yukarıdaki örnekte ise Ogrenciler adlı  tablo seçilir ve No kısmı esas alınarak azalan bir şekilde sıralanırlır.



DML (DATA MANIPULATION LANGUAGE) DEYİMLERİ 

     Veritabanı içine bilgi girişi, güncelleme ve gereksiz bilgilerin silinmesi ile ilgili SQLdeyimleridir. 
 

  • SELECT
  • INSERT
  • UPDATE
  • DELETE



    SELECT DEYİMİ 

     Veritabanındaki verilere erişmeyi listelemeyi ve sıralamayı sağlayan SQL deyimidir. Genellikle bir ya da daha çok tablonun bütün alanları ya da belli alanları için SELECTdeyimi yazılır. Yapısı : 

    SELECT [TOP n [PERCENT]] [DISTINC alan] sütun_listesi 

    FROM kaynak_listesi 

    [WHERE arama_koşulu] 

    [ORDER BY sıralama_koşulu [ASC | DESC]]



Sql veritabanındaki Delete deyimi daha önceden kaydetilmiş bir veya daha fazla veriyi silme işlemi için kullanılan bir sql komutudur. SQL Delete Deyiminin Kullanımı :

DELETE FROM tablo_adı 
[WHERE koşul] 

Bir örnek verelim. Daha önceden tablomuzda kayıtlı olan bir bilgiyi silelim. 

Delete from Ogrenciler 
Where Ogrencino like `2006015215048` 

     Yukarıdaki örneğimizde Delete from Ogrenciler komutları ile hangi tablodaki bilginin silineceği ve Where Ogrencino like `2006015215048`where koşulu ile hangi kayıttın silineceği belirtilir.WHERE ile koşul belirtilmezse tüm kayıtlar silinir. Bu yüzden veri kaybını önlemek için koşul belirtmeye dikkat edilmelidir.



Sql deyimleri veritabanı  oluşturmak için Create Table komutunu kullanmanız gerekmektedir. Create Table komutunun kullanımı aşağıdaki gibidir.

CREATE TABLE

CREATE TABLE tablo_adı
        (nitelik1 tür1 [DEFAULT ifade] [NOT NULL], ...nitelikN
        [[CONSTRAINT kısıt_adı] CHECK durum1, ...durumN] )
       

Bu konuyu daha iyi anlamanız örnek bir uygulama hazırlayalım. Veritabanımızın alanları id,keywords ve açıklamadır. Bu veritabanını oluşturmanız için aşağıdaki SQL Komutlarını yazmanız gerekir.

CREATE TABLE `alt_menu` (
  `id` int(11) NOT NULL auto_increment,
  `Keywords` varchar(150) NOT NULL,,
  `aciklama` text,
  PRIMARY KEY  (`id`)
)



SQL veritabanında verileri tabloya yazdırmak yani kaydetmek için "insert" deyimi kulllanılır. INSERT deyiminin kullanımı :

INSERT [INTO] tablo_adı (sütun_listesi) 
VALUES (değer_listesi) 


insert deyimini daha iyi anlamanız için şimdi bir örnek uygulama hazırlayalım. Ogrenciler tablosona Ogrencino,Adi,Soyadi alanlarını oluşturalım. 

INSERT INTO `ogrenciler` (`Ogrencino`,`Adi`,`Soyadi`,) 
VALUES ('2006015215048','Okan','Ka',); 

     Bu örneğimizde tablomuza INSERT INTO `ogrenciler` (`Ogrencino`,`Adi`,`Soyadi`,) satırı ile alanlarımı belirttik ve VALUES ('2006015215048','Okan','Ka',); bu satırlardada alanlarımıza yeni kayıtları atadık.



Update Deyimi, insert komutu ile veri tabanina kayit etigimiz bilgileri güncellemek için kullanilan bir sql deyimidir. Yapisi

UPDATE tablo_adi SET güncellestirme_listesi {sütun_adi1 = yeni deger1, sütun_adi2 = yeni deger2, …}
[WHERE kosul]

     Bir örnek verelim.Bu örnegimiz yukarida insert deyimiyle ekledigimiz bilgilerin güncellenmesi

UPDATE `ogrenciler`
Set Adi=`Ahmet` , Soyadi=`Dk`
where `Ogrencino` like '2006015215048'

     Bu örnegimizde UPDATE `ogrenciler` komutu ile güncellenmesi yapilacak tablonun adi , Set Adi=`Ahmet` , Soyadi=`Dk` bu komutlar ile Adi,Soyadi alanlarinin yeni degerleri ve where `Ogrencino` like '2006015215048' bu komutlarla Ogrencino 'su 2006015215048 olan kayiti degistir.Eger WHERE ile kosul belirtilmezse tüm kayitlar üzerinde islem yapilir.



DISTINCT : Sadece tek olan ( unique) kayitlarin sonuç listesinde yer almasini saglar.

sütun_listesi : Seçilecek alanlari (sütunlari) belirtir.

FROM : Belli bir tablonun seçilmesini saglar.

kaynak_listesi : Sorgulanacak olan tablo ya da tablolari, görünümleri belirtir.

WHERE : Bir kosulu belirterek sadece o kusula uyan kayitlarin seçilmesini saglar.

ORDER BY : Verilen kosula göre siralama yapar

Örneklerle açiklamaya çalisalim.

SELECT * FROM Ogrenciler
WHERE (DTarihi BETWEEN '01.01.1980' AND '01.01.2007')

    Yukaridaki örnekte SELECT * FROM Ogrenciler komutuyla bulunacak tabkonun adi ve WHERE (DTarihi BETWEEN '01.01.1980' AND '01.01.2007') bu komutlarla Dtarihi '01.01.1980' ve '01.01.2007' arasinda olan kayitlari bulur.



« 1 2 »