Skip Navigation Links
ProgramlamaExpand Programlama
İnternet DilleriExpand İnternet Dilleri
İşletim SistemleriExpand İşletim Sistemleri
Veri TabanlarıExpand Veri Tabanları
Network
Makaleler


    SQL

     SQL, ilişkisel veritabanlarındaki bilgileri sorgulamak için kullanılan dildir. SQL, bütün kullanıcıların ve uygulamaların veritabanına erişmek için kullandıkları komutlar bütünüdür. Uygulama programları ve veritabanı araçları kullanıcılara çoğu durumda SQL kullanmadan veritabanına erişim imkanı sunmaktadırlar fakat bu uygulamalar da geri planda SQL kullanmaktadırlar. SQL, ilişkisel veritabanı yönetim sistemleri standardı olarak kabul edilmektedir. SQL komutları ile aşağıdaki işlemler yapılabilir. SQL komutları ile aşağıdaki işlemler yapılabilir.

  • Veri sorgulama
  • Bir tabloya kayıt ekleme, değiştirme ve silme
  • Veritabanı nesnelerini (database objects) yaratma, değiştirme ve silme
  • Veritabanına ve nesnelerine erişimi kontrol etme
  • Veritabanı bütünlüğünü ve tutarlılığını sağlama işlemleri yapılabilmektedir.

        SQL DEYİMLERİ

        Structured Query Language (Yapısal Sorgulama Dili) database (veritabanı) yönetimi için bir programlama standartı.ANSI ve ISO standartlarında ve bir çok programlama dilli standart komutlarında SQL özelliklerini kullanmaya imkan sağlıyor.Veritabanından sorgulama yapmak için SELECT, ekleme yapmak için INSERT güncelleme yapmak için UPDATE, silme yapmak için DELETE, yeni tablo oluşturmak için CREATE TABLE gibi komutlara sahiptir. Bu komutlar işlevlerine göre şu şekilde kategorilendirilir:

        VERİ TANIMLAMA DİLİ (DDL DATA DEFİNİTİON LANGUAGE) DEYİMLERİ

         DDL deyimleri ile veritabanı üzerinde nesneler oluşturulabilir.. En yaygın kullanılan DDL deyimleri şunlardır.

  • CREATE
  • ALTER
  • DROP

        CREATE DEYİMİ : Veritabanı üzerinde bir tablo oluşturmak için CREATE deyimi kullanılır. Yapısı: CREATE tablonun adı . Bir örnekle açıklamaya çalışalım:

    CREATE TABLE `ogrenciler` (
       `BolumKodu` char(5) NOT NULL default '',
        `OgrenciNo` char(15) NOT NULL default '',
        `Adi` char(25) NOT NULL default '',
        `Soyadi` char(25) NOT NULL default '',
        `DTarihi` date NOT NULL default '0000-00-00',
    PRIMARY KEY (`OgrenciNo`)
    )

         Bu örnekte CREATE TABLE `ogrenciler` ( adlı komutlar ile ogrenciler adında bir tablo oluşturuluyor. BolumKodu` char(5) NOT NULL default '', bu komutlarda ise char(5) BolumKodu 5 karekter olabilecek NOT NULL boş bırakılamayacak bir alan oluşturuyor . `OgrenciNo` char(15) NOT NULL default '', bu komutlarda ise char(15) OgrenciNo 15 karekter olabilecek NOT NULL boş bırakılamayacak bir alan oluşturuyor. `Adi` char(25) NOT NULL default '', ve `Soyadi` char(25) NOT NULL default '', bu komutlarda ise char(25) Adi ,Soyadi 25 karekter olabilecek NOT NULL boş bırakılamayacak bir alan oluşturuyor.DTarihi` date NOT NULL default '0000-00-00' komutları ise date komutu ile o zaman ki kayıt tarihi NOT NULL boş bırakılamayacak, default '0000-00-00' tarih kısmı " " işaretleri arasında ki gibi yazılabilcek bir alan oluşturuyor. PRIMARY KEY (`OgrenciNo`) komutuyla bilincil anahtarımızı OgrenciNo adlı alanına atıyoruz ve ) ile bitiriyoruz.

        ALTER DEYİMİ : Daha önceden oluşturulmuş nesnenin değiştirilmesini sağlar.Yapısı : ALTER TABLE tablonun adı. Örnek:

          ALTER TABLE Ogrenciler ADD Memleketi int

       Bu örnekte ALTER TABLE Ogrenciler Ogrenciler tablosunu değiştir. ADD Memleketi int ifadesi ile integer tipinde Memleketi adlı bir alan eklenmiş oluyor.

          ALTER TABLE Ogrenciler DROP COLUMN Memleketi

       Bu örnekte ise ALTER TABLE Ogrenciler Ogrenciler tablosunu değiştir. DROP COLUMN Memleketi Memleketi adlı daha önceden var olan bir alanı sil demek isteniyor.

        DROP : DROP ifadesi, önceden var olan bir alanı veya tablonun kaldırılması için kullanılır.Yapısı : DROP TABLE tabolonun adi . Örnekle açıklamaya çalışalım.

          DROP TABLE Ogrenciler

        Yukarıdaki örnekte Ogrenciler adlı tabloyu ve içindeki bilgilerin hepsinin kaldırılması sağlar.

        DML (DATA MANIPULATION LANGUAGE) DEYİMLERİ

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

  • SELECT
  • INSERT
  • UPDATE
  • DELETE

        SELECT DEYİMİ

         Veritabanındaki verilere erişmeyi listelemeyi ve sıralamayı sağlayan SQL deyimizidir. genellikle bir ya da daha çok tablonun bütün alanları ya da belli alanları için SELECT deyimi 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]]

    DISTINCT : Sadece tek olan ( unique) kayıtların sonuç listesinde yer almasını sağlar.

    sütun_listesi : Seçilecek alanları (sütunları) belirtir.

    FROM : Belli bir tablonun seçilmesini sağlar.

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

    WHERE : Bir koşulu belirterek sadece o kuşula uyan kayıtların seçilmesini sağlar.

    ORDER BY : Verilen koşula göre sıralama yapar

    Örneklerle açıklamaya çalışalım.

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

        Yukarıdaki örnekte SELECT * FROM Ogrenciler komutuyla bulunacak tabkonun adı ve WHERE (DTarihi BETWEEN '01.01.1980' AND '01.01.2007') bu komutlarla Dtarihi '01.01.1980' ve '01.01.2007' arasında olan kayıtları bulur.

       Order By İle Verileri Sıralamak

        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.

        INSERT DEYİMİ

         Veritabanındaki tabloya insert deyimi ile tabloya veri girişi yapılır.Yapısı:

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

         Bir örnek verelim.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 DEYİMİ

         Tablomuza önceden kayıtları yapılmış bilgilerin güncellenmesi için kullanılır. Yapısı

    UPDATE tablo_adı SET güncelleştirme_listesi {sütun_adı1 = yeni değer1, sütun_adı2 = yeni değer2, …}
    [WHERE koşul]

         Bir örnek verelim.Bu örneğimiz yukarıda insert deyimiyle eklediğimiz bilgilerin güncellenmesi

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

         Bu örneğimizde UPDATE `ogrenciler` komutu ile güncellenmesi yapılacak tablonun adı , Set Adi=`Ahmet` , Soyadi=`Dk` bu komutlar ile Adi,Soyadi alanlarının yeni değerleri ve where `Ogrencino` like '2006015215048' bu komutlarla Ogrencino 'su 2006015215048 olan kayıtı değiştir.Eğer WHERE ile koşul belirtilmezse tüm kayıtlar üzerinde işlem yapılır.

        DELETE DEYİMİ

         DELETE deyimi ile bir tablonun bir ya da daha çok satırının silinmesi sağlanır.Yapısı :

    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.

  • << Geri

     

    Webbilgileri© 2007 - 2008| Web Hosting:ekstrabilisim.com
    Web tasarım: Okan KACAN