Yapısal Sorgulama Dili (SQL)

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Yapısal Sorgulama Dili (SQL)"

Transkript

1 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 1 Yapısal Sorgulama Dili (SQL) İlişkisel veri tabanı yönetim sistemleri (RDBS) modeli ilk önce 1970 yılında Dr.E. F. Codd tarafından tarif edilmiştir. SQL veya Structured English Query Language (SEQUEL), IBM firması tarafından Codd un modeli kullanılmak için geliştirilmiştir. SEQUEL sonraları SQL olmuştur yılında, Relational Software, SQL in ilk ticari uygulamasını geliştirmiştir. Bugün SQL, ilişkisel veri tabanı yönetim sistemleri standardı olarak kabul edilmektedir. SQL, ilişkisel veri tabanlarındaki bilgileri sorgulamak için kullanılan bir dildir. SQL, tüm kullanıcıların ve uygulamaların veri tabanına erişmek için kullandıkları komutlar bütünüdür. Uygulama programları ve veri tabanı araçları kullanıcılara çoğu durumda SQL kullanmadan veri tabanına erişim imkânını sunmaktadırlar fakat bu uygulamalarda geri planda SQL kullanmaktadırlar. Oracle SQL I, standartlara uygundur. Daha da ötesinde, Oracle, SQL standartlarının gelişmesinde motor güç olan bir kurumdur. American National Standarts Institue (ANSI) ve International Standarts Organization (ISO) tarafından belirlenen son SQL standardı, SQL-92 dir. SQL-92 de üç aşamalı uygunluk vardır, İlk seviye (Entry Level) Orta seviye (Intermediate Level) İleri seviyedir (Full Level) SQL, ilişkisel veri tabanları ile uygulamaların diyalogunu sağlamaktadır. SQL temelde verilerle mantıksal seviyede çalışmaktadır. Yani, bir tablodan birkaç kayıt seçebilmek için, o kayıtları seçebilecek bir koşul belirtilir. Koşula uyan tüm kayıtlar bir basamakta gelir ve bunlar kullanıcıya gösterilebildiği gibi, bir başka SQL e veya uygulamaya da gönderilebilir. Kayıtların tek tek nasıl geldiği ve fiziksel olarak veri tabanının neresinde ve nasıl tutulduğu ile SQL ilgilenmektedir. SQL komutları ile 1. Veri sorgulama 2. Bir tabloya kayıt ekleme, değiştirme ve silme 3. Veri tabanı nesneleri (database objects) yaratma, değiştirme ve silme 4. Veri tabanına ve nesnelerine erişimi kontrol etme 5. Veri tabanı bütünlüğünü ve tutarlılığını sağlama işlemleri yapılabilmektedir. SQL komutları bir veya daha fazla satır olabilmektedir. SQL cümlelerinin sonuna noktalı virgül (;) konmaktadır. Birden fazla satır olan komutlarda en son satırın sonuna / işareti isteğe bağlı olarak konabilmektedir. PL/SQL, Oracle in SQL komutlarına yapısal dillere ait özellikleri (begin, end, loop, for, if, elsif, vb.) eklediği kendi standardı olan bir dildir. SQL*Plus, SQL ve PL/SQL komutlarının kullanılabildiği Oracle ürünüdür.

2 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 2 GĠRĠġ Sql ile gerçekleştirilecek işlemlerde, üzerinde işlem yapılacak olan veri tabanı kütükleri ya da tablolar, bir veri tabanı içinde oluşturulur. Bu veri tabanını oluşturmak için, CREATE DATABASE VERĠ_TABANI_ĠSMĠ; Şeklindeki Sql komutunu kullanmak gerekir. Bu komut belirtilen isimde veri tabanını oluşturur. Daha önceden oluşturulmuş veri tabanlarını görmek için; SHOW DATABASES; Komutu kullanılır. Oluşturulan database üzerinde işlem yapmak için; USE DATABASE_ĠSMĠ; Komutu kullanılır. ÖRNEK-1: Personel bilgileri isminde bir veri tabanı oluşturalım. CREATE DATABASE PERSONEL_BILGILERI; Veri tabanı içerisine, bir işletmenin çeşitli faaliyetleri ile ilişkili aşağıdaki türlerde bilgiler yükleyelim. SICIL_N O SGN O AD I SOYAD I PERSONEL TABLOSU ADRE S DOG_TA R CINSIYE T MAA S BOL_N O YONETICI_N O BOLÜM TABLOSU BOLUM_ADI BOLUM_NO YONETICI_NO BOLUM_NO YER TABLOSU BULUNDUGU_YER PROJE TABLOSU PROJE_ADI PROJE_NO YER BOLUM_NO ÇALIġMA TABLOSU SGNO PROJE_NO SAAT BAGIMLILIK TABLOSU SGNO SICIL_NO CINSIYET DOG_TAR YAKINLIGI PARCA TABLOSU PARCA_NO PARCA_ADI PROJE_NO FIYAT AGIRLIK FIRMA TABLOSU FIRMA_NO ADI ADRES PARCA-FIRMA TABLOSU FIRMA_NO PARCA_NO MIKTAR

3 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 3 Veri Tipleri (Data Types) Veri tipi SQL komutu Özelliği Sabit uzunluklu karakter CHAR (uzunluk) Sayısal işleme sokulmayacak veriler. Değişken uzunluklu karakter VARCHAR (uzunluk) Buradaki uzunluk max. Uzunluktur. Karakter tipindeki veriler gibidir. Tek fark uzunluk değişkendir. Nümerik tam sayı INTEGER ile arasındaki tam sayılardır. Bellekte 4 Byte lık yer kaplarlar. Ondalık sayı Üstel sayı DECIMAL(x,y) REAL(x,y) ya da NUMERIC (x,y) BOOLEAN(x,y) örnek: 3.1E+17 gibi X sayısının max. hanesayısı y ondalık notadan sonraki hane sayısıdır. x en fazla 20, y ise 0-18 arasındadır. X sayısının toplam hane sayısıdır. max. Değer 20 dir.0.1e-307 ile 0.9E+308 arasındaki değerleri alabilir. Tarih türü veriler DATE Tarih türü veriler için işlem yapmayı sağlar. Mantıksal veri LOGICAL Doğru (true. T.) ya da yanlış (false. F.) şeklinde değer alabilen veriler için kullanılır. Zaman türü veriler TIME Ssddsnsn şeklindeki veriler için kullanılır. Tarih ve zaman türü veriler TIMESTAMP Tarih ve zaman türü verilerin bir karışımı şeklinde kullanılan veriler içindir. Grafik türü veriler GRAPHIC(n) N adet 16 bitlik karakterden oluşan bir sabit uzunluklu bilgi tanımlamak için kullanılır. Değişken uzunluklu grafik türü veri VARGRAPHIC(n) N adet 16 bitlik karakterden oluşan değişken uzunluklu bir bilgi tanımlamak için kullanılır.

4 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 4 TABLO OLUġTURMA Tabloların oluşturulması için CREATE TABLE TABLO_ĠSMĠ (ALANLAR VE ÖZELLĠKLERĠ); Komutu kullanılır. ÖRNEK-2: Giriş bölümünde verilen tabloların oluşturulması; PERSONEL TABLOSU CREATE TABLE PERSONEL (SICIL_NO INTEGER NOT NULL, SGNO VARCHAR(8) NOT NULL, AD VARCHAR(10) NOT NULL, SOYAD VARCHAR(10) NOT NULL, DOG_TAR DATE, ADRES VARCHAR(50), CINSIYET BOOLEAN, MAAS NUMBER(13,2), BOL_NO INTEGER, YONETICI_NO VARCHAR(8)); CREATE TABLE PARCA (PARCA_NO INTEGER, PARCA_ADI VARCHAR(15), PROJE_NO INTEGER, FIYAT NUMBER(13,2), AGIRLIK INTEGER); FIRMA TABLOSU CREATE TABLE FIRMA (FIRMA_NO INTEGER, FIRMA_ADI VARCHAR(20), ADRES VARCHAR(20)); BOLÜM TABLOSU CREATE TABLE BOLUM (BOLUM_ADI VARCHAR(15), BOLUM_NO INTEGER, YONETICI_NO VARCHAR(8)); PARÇA FĠRMA TABLOSU CREATE TABLE PARCA_FIRMA (FIRMA_NO INTEGER, PARCA_NO INTEGER, MIKTAR INTEGER); YER TABLOSU CREATE TABLE YER (BOLUM_NO INTEGER, BULUNDUGU_YER VARCHAR(15)); PROJE TABLOSU CREATE TABLE PROJE (PROJE_ADI VARCHAR(15), PROJE_NO INTEGER, YER VARCHAR(15), BOLUM_NO INTEGER); ÇALIġMA TABLOSU CREATE TABLE CALISMA (SGNO VARCHAR(8), PROJE_NO INTEGER, SAAT INTEGER); BAĞIMLILIK TABLOSU CREATE TABLE BAGIMLILIK (SGNO VARCHAR(8), SICIL_NO INTEGER, CINSIYET BOOLEAN, DOG_TAR DATE, YAKINLIGI VARCHAR(10)); PARÇA TABLOSU

5 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 5 TABLOLARDA DEĞĠġĠKLĠK YAPMA TABLOYA VERĠ GĠRĠġĠ (INSERT) SQL de, mevcut bir tabloya veri eklemek için kullanılacak olan komut INSERT komutudur. Standart SQL de, oluşturulan bir tabloya veri yüklemek için tek imkân INSERT komutudur. INSERT komutu ile tabloya, belli bir anda, tek bir satır eklemek imkânı vardır. INSERT komutunun yazılış biçimi aşağıdaki gibidir: INSERT INTO TABLO ADI(SÜTUN ADI1, SÜTUN ADI2,..SÜTUN ADI(N)) VALUES (DEĞER1, DEĞER2,...DEĞER(N)); ÖRNEK-3: Personel tablosuna, sicil no su 275 olan personel ile ilişkili bilgiler aşağıdaki gibi bir INSERT komutu ile yüklenebilir INSERT INTO PERSONEL (SICIL_NO, SGNO, ADI, SOYADI, DOG_TAR, ADRES, CINSIYET, MAAS, BOL_NO, YONETICI_NO) VALUES ( 275, , ALĠ, CANER, 1962/05/01, MERKEZ CAD. 46-FATĠH-IST,1, , 2, ); Karakter türü verilen sembolleri arasına yüklendiğine, diğer veriler içinse buna gerek olmadığına dikkat ediniz. Burada, tabloya tüm kolonlarla ilgili veri yüklendiği için, istenirse kolon isimleri ihmal edilebilir. Standart SQL deki INSERT komutunun, belli bir anda, tabloya, tek bir satırı eklemesine karşılık, birçok SQL gerçekleştiriminde, yığın halinde veri yükleyen hizmet programlarından (utility) faydalanmak imkânı da vardır. Ayrıca, INSERT komutunun bu şekli ile tabloya veri yüklemek pratikte tercih edilebilecek bir şekil değildir. (Her tablo satırı için bir INSERT komutu kullanılıyor) Daha kullanışlı olan yol, verilerin kullanıcın zorlanmayacağı bir ekran düzeni ile klavyeden yüklenmesi daha bunların INSERT ile tabloya yerleştirilmesidir. SQL de ekrandan interactive bilgi girişi ve ekran tasarımı sağlayacak komutlar yoktur. Fakat SQL in bir veri tabanı yönetim yazılımının (dbase, FoxPro, ORACLE) ya da bir üst düzey dilinin (C, Pascal, COBOL, vb.) interactive bilgi girişine uygun komutlarını kullanarak bu işlemi arzu edilen kalitede gerçekleştirmesi mümkündür. SQL in diğer dillerle etkileşimi daha sonra incelenecektir. TABLO SATIRLARINI SĠLME (DELETE) Bir tablonun satırlarını silmek için gerekli komut DELETE komutudur. Satır silme koşullu veya koşulsuz olarak gerçekleştirilebilir. DELETE FROM PERSONEL; 25 ROWS DELETED Bu komut ile personel tablosundaki tüm satırlar silinecektir. 25 Rows Deleted Mesajı ile o anda tabloda bulunan 25 satırın silindiği bildirilmektedir. Koşula bağlı olarak satır silmenin de mümkün olduğunu söylemiştik. Bunu gerçekleştirmek için, DELETE komutuna WHERE sözcüğü eklenmeli ve bunu izleyen ifade koşulu göstermelidir. DELETE FROM PERSONEL WHERE BOL_NO=2; 5 ROWS DELETED Bu komut ile 2 numaralı bölümdeki personelin tümü tablodan silinecektir. Rows Deleted Mesajı ile de, o anda 2 numaralı bölümde çalışan 5 personele ait satırların silindiği belirtilmektedir. Aşağıdaki örnekte ise maaş alanı boş olmayan tüm personel silinmektedir: DELETE FROM PERSONEL WHERE MAAS IS NOT NULL; 25 ROWS DELETED

6 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 6 TABLO SATIRLARINI GÜNCELLEME (UPDATE) PERSONEL adlı tabloda sicili olan kişinin maaşını olarak değiştirmek için UPDATE PERSONEL SET MAAS = WHERE SICIL_NO =27251; 2 inci bölümün yürüttüğü projelerde kullanılan tüm parçaların fiyatlarını % 7 zam yap UPDATE PARCA SET FIYAT = FIYAT *1,07 WHERE PR_NO IN (SELECT PROJ_NO FROM PROJE WHERE BL_NO = 2; TABLONUN YAPISINDA DEĞĠġĠKLĠK YAPMA ALTER TABLE KOMUTU ALTER TABLE komutu ile bir tablonun yapısında değişiklik yapmak mümkündür. Bu değişiklikler tabloya yeni bir kolon ekleme ADD komutu, mevcut kolonun özelliklerini değiştirme MODIFY komutu ile kolon genişliğini değiştirme yada kolondaki verinin NULL yada NOT NULL özelliğini değiştirme,tablodan kolon silme DROP,Mevcut kolonun adını değiştirme RENAME yada tablonun adını değiştirme RENAME TABLE öelliklerinin tamamı ALTER TABLE komutu içinde mevcuttur. Personel tablosuna işe başlama tarihi adında kolon ekleyiniz. ALTER TABLE PERSONEL ADD IS_BAS_TAR DATE; Daha önce proje adlı tabloda VARCHAR(15) olan alanı 25 olarak genişletiniz. ALTER TABLE PROJE MODIFY YER VARCHAR(25); Personel tablosundan IS_BAS_TAR kolonunu siliniz. ALTER TABLE PERSONEL DROP IS_BAS_TAR; Personel tablosunun adını elemanlar olarak değiştiriniz. ALTER TABLE PERSONEL RENAME TABLE ELEMANLAR; Personel tablosunda Maas alanını Brut olarak değiştiriniz. ALTER TABLE PERSONEL RENAME MAAS BRUT; Proje adlı tabloyu siliniz. DROP TABLE PROJE; Temel SQL Sorgulamaları SELECT Komutu Tablodan gerekli bilgileri elde edebilmek için sorgulama komutu SELECT * FROM PERSONEL; Şeklindedir. Bu komut, personel adlı tablo içindeki tüm bilgileri koşulsuz olarak listeleyecektir. SELECT sözcüğünü izleyen kısımda * sembolünün bulunması ilgili tablodaki tüm sütun isimlerinin ve ilgili bilgilerin listelenmesini sağlayacaktır. SELECT SICIL_NO, SGNO, ADI, SOYADI, DOG_TAR, ADRES, CINSIYET, MAAS BOL_NO, YONETICI_NO FROM PERSONEL; Şeklinde olan komut da SELECT sözcüğünden sonra gelen kısımda sütun adları, FROM sözcüğünden sonra gelen kısımda ise tablo ismi yer almaktadır. Tekrarlı Satırların Ortadan Kaldırılması (DISTINC) Tablo içinde birbirinin aynı veri içeren satırlara müsaade edilir. Birbirinin aynı olan satırların listeleme esnasında bir kez yazılması için SELECT komutuna DISTINC sözcüğü eklenir. SELECT DISTINC FIRMA_NO FROM PARCA_FIRMA; Bu komut ile parca_firma adlı tablodan firma numaraları tekrarsız olarak listelenecektir.

7 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 7 Tablo Bilgilerinin SıralanmıĢ Olarak Listelenmesi (ORDER BY) Tablodan listelenecek bilgilerin belirli bir sütun adına göre sıralanmış olarak görüntülenmesi için SELECT komutuna ORDER BY sözcüğü ilave edilir. ÖRNEK-4: Personel tablosundaki bilgilerin sicil_no, adi, soyadi ve maaş sütunlarını maaşa göre sıralı olarak listeleyiniz, SELECT SICIL_NO, ADI, SOYADI, MAAS FROM PERSONEL ORDER BY MAAS ASC; ASC sözcüğü artan anlamındadır. Veriler azalan sırada büyükten küçüğe ya da alfabetik olarak Z den A ya sıralanmak istense idi bu sözcük yerine DESC kullanılacaktı. Birden Çok Alana Göre Sıralama (ORDER BY) Bir tablo içindeki verileri aynı anda birden çok sütuna göre sıralamak da mümkündür. ÖRNEK-5: Personel tablosundaki sicil_no, adi, soyadi ve maaş sütunlarını adi ve maas a göre listeleyiniz, SELECT SICIL_NO, ADI, SOYADI, MAAS FROM PERSONEL ORDER BY ADI, MAAS; Burada tablo öncelikle ada göre artan sırada sıralanacak, sadece aynı ada sahip olanlar kendi aralarında MAAS A göre artan sırada sıralanacaklardır. Ada ve maaşa göre sıralama çıktısı; SICIL_NO ADI SOYADI MAAS 1215 Ali Can Ali Okan Birol Çelen Birol Akın Burada çok sayıda alana göre sıralama, farklı sıralama kriterlerine göre gerçekleştirilebilir. KoĢula Bağlı Olarak Listeleme SELECT komutu ile bir tablonun satırları içinden sadece verilen bir koşulu sağlayanlar listelenebilir. ÖRNEK-6: Maaşı dan fazla olan personel listelenmek istenirse SELECT komutu aşağıdaki gibi yazılmalıdır SELECT * FROM PERSONEL WHERE MAAS > ; Burada WHERE sözcüğünü izleyen kısımda koşul belirtilmektedir. Koşul belirtilirken iki veri birbiri ile karşılaştırılmaktadır. SQL içinde verileri çeşitli açılardan karşılaştırmak için karşılaştırma operatörleri kullanılmaktadır. Karşılaştırma ifadesinde karşılaştırılacak verilerin türleri aynı olmalıdır. KarĢılaĢtırma Operatörleri Operatör Anlamı < den küçük > den büyük = Eşit <= Küçük veya eşit >= Büyük veya eşit <> Eşit değil!= Eşit değil Birden Çok KoĢula Dayalı Sorgulamalar (Not, And, Or) Not, And ve Or mantıksal operatörleri yardımı ile birden çok koşulun gerçekleştirilmesine bağlı olarak ifade edilebilecek karmaşık ya da bileşik koşulu ile listelemeleri gerçekleştirmek mümkündür. ÖRNEK-7:

8 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 8 Maaşı TL den fazla olan ve cinsiyeti erkek olan personelin listelenmesi gibi bir işlemde söz konusu personel için iki koşul verilmekte ve her ikisinin de gerçekleşmesi istenmektedir. 1.koşul: Maaşın TL den fazla oluşu 2.Koşul: Cinsiyetin ERKEK olması SELECT * FROM personel WHERE MAAS > AND cins =.T. ; Koşul.T..F. NOT Operatörü NOT Koşul.F..T. AND OPERATÖRÜ 1.Koşul 2.Koşul 1.koşul AND 2.koşul.T..T..T..T..F..F..F..T..F..F.F..F. OR OPERATÖRÜ 1.Koşul 2.Koşul 1.Koşul AND 2.koşul.T..T..T..T..F..T..F..T..T..F.F..F. ÖRNEK-8: Doğum tarihi 1960 dan önce olan ve maaşı arasında olan bayan personelin listesi, SELECT *FROM PERSONEL WHERE DOG_TAR < 1960/01/01 AND MAAS >= AND MAAS <= AND CINSIYET =1; ÖRNEK-8: Satış bölümü ile muhasebe bölümündekiler kimlerdir? Satış bölümünün BOL_NO sunun 1 ve muhasebe bölümünün BOL_NO sunun 2 olduğunu varsayarsak; SELECT *FROM PERSONEL WHERE BOL_NO =1 OR BOL_NO =2; Bir Veri Kümesi Ġçinde Arama IN Operatörü Aşağıda vereceğim örnek sorunun cevabını şu ana kadar anlattığım SQL komutları ile gerçekleştirebiliriz ÖRNEK-9: BOL_NO su 1,2 ya da 3 olan personeli listeleyiniz. SELECT *FROM PERSONEL WHERE BOL_NO=2 OR BOL_NO=2 OR BOL_NO=3; Fakat SQL de bu işlemi gerçekleştirmenin daha kısa bir yolu vardır IN sözcüğü SELECT *FROM PERSONEL WHERE BOL_NO IN (1,2,3) ; Bu komut OR ile düzenlenen 1. SELECT cümlesine denktir. Fakat belirtildiği gibi daha kısa ve anlaşılır bir ifade oluşmaktadır. IN operatörü NOT ile birlikte kullanılabilir. Aralık Sorgulaması BETWEEN Sözcüğü ÖRNEK-10: Maaşı 5-10 Milyon arasında olan personel kimlerdir? SELECT *FROM PERSONEL WHERE MAAS >= AND MAAS <= ; Aynı soruya daha kısa ve daha etkin bir cevap verilecek olursa BETWEEN sözcüğü kullanılır. SELECT *FROM PERSONEL WHERE MAAS BETWEEN AND ;

9 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 9 Karakter Türü Bilgi Ġçinde Arama Yapma LIKE Sözcüğü Personel tablosu içinde adres alanı 50 karakter uzunluğunda karakter türü olarak tanımlanmıştı. Adres bilgisinin aşağıdaki şekilde verildiğini varsayalım; Cumhuriyet Cad. 46/9 Taksim-Ġstanbul. Burada adres içinde, semtin de belirtildiğini ve bunun ayrı bir sütun olmadığına dikkat çekelim. Şimdi belirli bir semtte ikamet eden personeli listelemek istersek semt adını, adres alanı içinde aramak gerekecektir. Bu işlemi gerçekleştirmek için LIKE sözcüğü kullanılır. SELECT *FROM PERSONEL WHERE ADRES LIKE % TAKSĠM % ; Bu komut ile Taksim semtinde ikamet eden personel listelenmek istenmektedir. Bu komut gerçekten de Taksim de oturan personeli listeleyecektir. Ama bu arada Taksim Caddesi 22-7 Kadıköy - Ġstanbul Şeklindeki adresleri de listeleyecektir. ADRES LIKE % TAKSĠM % İfadesi adres içinde Taksim i arayacaktır. Adres içinde herhangi bir yerde bulduğu takdirde bu satırı listeleyecektir.% sembolü Taksim sözcüğünün öncesinde ve sonrasındaki karakterler ne olursa olsun anlamındadır. Yukarıdaki LIKE ifadesi Taksim Cad.81-Fatih şeklindeki Taksim in en başta ve en sonda olduğu adresleri listeleyecektir. LIKE sözcüğünü, alt çizgi (_) sembolü ile birlikte de kullanmak da mümkündür. ARĠTMETĠKSEL ĠFADELER VE FONKSĠYONLAR Aritmetiksel ifadeler SELECT komutu ile veri tabanında mevcut tablolardan listeleme yaparken, tabloda ayrı bir sütun olarak yer almamış ve ancak bir hesaplama sonucunda üretilebilecek bilgileri de liste içine katmak mümkündür. Aşağıdaki SELECT komutu ile personelin şu anda geçerli olan maaşı ile bu maaşın %32 zamlı şekli listelenmektedir: SELECT ADI, SOYADI, MAAS, MAAS*1.32 FROM PERSONEL; Hesaplanmış alanları elde etmek için oluşturulacak aritmetiksel ifadelerde, aşağıda belirtilen tablodaki sembollerden yararlanılır. Sql de Aritmetiksel Semboller Operatör İşlevi ** veya ^ Üs alma * Çarpma / Bölme + Toplama - Çıkarma Öncelik sırası matematikte ve diğer bilgisayar dillerinde olduğu gibidir. Üs alma hepsinden önceliklidir. Sonra * ve / gelir. * ve / aynı önceliğe sahiptir. + ve en son önceliklidir. Parantezler kullanılarak öncelik sırası değiştirilebilir. Kümeleme Fonksiyonları SQL, tablo içinden çeşitli matematiksel işlemlerin sonucunu otomatik olarak üretmeyi sağlayan fonksiyonlara sahiptir. Bu fonksiyonlar örneklerle birlikte aşağıda verilmiştir. SUM Fonksiyonu Fonksiyonun argümanı olarak belirtilen sütun ile ilişkili olarak toplama işlemini gerçekleştirir. ÖRNEK-11: İşletmedeki personelin MAAS maaşları toplamı ne kadardır? SELECT SUM (MAAS) FROM PERSONEL; ÖRNEK-12: Bilgi işlem bölümündekilerin toplam maaşı ne kadardır? Bilgi işlem bölümünün bölüm numarasını 5 olarak kabul edelim.

10 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 10 SELECT SUM ( MAAS) FROM PERSONEL WHERE BOL_NO=5; İfadesi ile sonuç elde edilebilir. Sonuç sadece bilgi işlem bölümündekilerin maaşlarının toplamı olacaktır. ÖRNEK-13: Satış, muhasebe ve bilgi işlem bölümlerindeki personelin maaşları toplamı nedir? Satış bölümü için, böl_no 1, muhasebe için 2 ve bilgi işlem için 5 olarak alınırsa SELECT SUM (MAAS) FROM PERSONEL WHERE BOL_NO IN (1,2,5); ÖRNEK-14: Maaşları TL nin altında olan bayan personelin maaşları toplamı nedir? Bayan personeli, daha önceden cins alanına 0(sıfır) yerleştirerek kodlamış isek SELECT SUM(MAAS) FROM PERSONEL WHERE CINSIYET=0. AND MAAS < ; AVG Fonksiyonu Aritmetiksel ortalama hesaplamak için kullanılır. SELECT AVG (MAAS) FROM personel; Komutu, işletmedeki ortalama maaşı hesaplayarak görüntüleyecektir. Bu fonksiyon ile de, koşula bağlı olarak hesaplatma yaptırılabilir. ÖRNEK-15: Bilgi işlem bölümündekilerin maaş ortalamaları ne kadardır? Bilgi işlem bölümünün BOL_NO su 5 ise SELECT AVG (MAAS) FROM PERSONEL WHERE BOL_NO =5 MAX Fonksiyonu Tablo içinde, belirtilen sütun (alan) içindeki en büyük değeri bulur. ÖRNEK-16: İşletme içindeki en yüksek maaş ne kadardır? SELECT MAX (MAAS)FROM PERSONEL; ÖRNEK-17: Bilgi işlem bölümündeki en yüksek maaş ne kadardır? SELECT MAX (BRUT)FROM PERSONEL WHERE BOL_NO=5; ÖRNEK-18: Bayan personel içinde en yüksek maaş ne kadardır? SELECT MAX (MAAS)FROM PERSONEL WHERE CINSIYET=0 ; MIN Fonksiyonu Tablo içinde, belirlenen sütun içindeki en küçük değeri bulur. ÖRNEK-19: İşletme içinde 4 Mayıs 1970 den önce doğanlar için asgari ücret nedir? SELECT MIN (MAAS ) FROM PERSONEL WHERE DOG_TAR < 1970/05/04 ; COUNT Fonksiyonu Tablo içinde herhangi bir sayma işlemi gerçekleştirmek için kullanılır. ÖRNEK-20: Personel tablosunda kaç satır vardır? (Bu her satırda farklı bir personel olduğu düşünülürse personel sayısı anlamına da gelmektedir.) SELECT COUNT (*) FROM PERSONEL; Bu koşula bağlı olarak da saydırma yapmak mümkündür. ÖRNEK-21: Ücreti dan fazla olan personel sayısı nedir? SELECT COUNT (*) FROM PERSONEL WHERE MAAS > ; COUNT fonksiyonu, DISTINCT sözcüğü ile de kullanılabilir.

11 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 11 ÖRNEK-22: Personel tablosunda mevcut personelin, işletme içinde kaç tane farklı bölümde çalıştığı bulunmak istenirse aşağıdaki SELECT komutu kullanılabilir. SELECT COUNT ( DISTINC BOL_NO) FROM PERSONEL; COUNT komutunda, * argümanının kullanılması, tüm sütunların (alanların) işleme sokulmasını, alan adının belirtilmesi ise (COUNT (böl_no) gibi), sadece belirtilen sütunun işleme sokulmasını sağlar. Gruplandırarak iģlem yapma Yukarıda anlatılan fonksiyonları, tablodaki bilgileri, bazı özelliklere göre gruplandırarak bu gruplandırılmış veri üzerinde de uygulama yapmak mümkündür. Bu işlem GROUP BY sözcükleri ile gerçekleştirilmektedir. ÖRNEK-23: Her bölümdeki ortalama maaş nedir? Burada istenen, bölümler bazında ortalama maaş olduğuna göre, personel tablosundaki satırlar, bölüm numaralarına göre (böl_no) gruplandırılarak her bir grubun maaş ortalaması ayrı ayrı hesaplanarak listelenebilir. SELECT BOL_NO, AVG (MAAS) FROM PERSONEL GROUP BY BOL_NO; SONUÇ Böl_no AVG (MAAS) ÖRNEK-24: Her bölümdeki en yüksek maaşı olan kişiler listelenmek istenirse, aşağıdaki komut kullanılabilir: SELECT BOL_NO, MAX (MAAS), ADI, SOYADI FROM PERSONEL GROUP BY BOL_NO ; Peronel tablosundaki bilgiler : MAAS Ad soyad Böl_no Ali Can Ayşe Okan Akın Oran Rana Şensoy 2 Şeklinde ise yukarıdaki SELECT komutunun çıktısı Böl_no Max_MAAS Ad Soyad Ali Can Rana Şensoy Şeklinde olacaktır. Gruplandırarak kümeleme fonksiyonlarını uygularken koşul da verilebilir. Bu durumda grup üzerindeki hesaplamalarla ilgili koşul belirtilirken HAVING sözcüğünü kullanmak gerekir. ÖRNEK-25: En yüksek maaşın dan fazla olduğu bölümlerdeki personele ait ortalama maaşları listeleyiniz. SELECT BOL_NO, AVG (MAAS) FROM PERSONEL GROUP BY BOL_NO HAVING AVG (MAAS) > ; Personel tablosunda şu bilgiler mevcut olsun : Böl_no MAAS

12 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa Yukarıdaki SELECT komutu sonrasında Böl Avg_MAAS Tablosu elde edilecektir. HAVING sözcüğü SELECT komutunda GROUP BY sözcükleri bulunmadığı zaman geçersizdir. HAVING sözcüğünü içeren ifade içinde SUM, COUNT, (*), AVG, MAX, MIN gibi diğer kümeleme elemanlarından en az biri bulunmalıdır. WHERE sözcüğü bir tablonun tek tek satırları üzerinde işlem yapan koşullar için geçerli iken, HAVING sözcüğü sadece gruplanmış veriler üzerindeki işlemlerde geçerlidir. Bazı durumlarda HAVING ve WHERE sözcükleri birlikte SELECT komutu içinde kullanılabilir. ÖRNEK-26: Personel tablosu içinde her bölümde erkek personele ait maaşlar için ortalamanın den fazla olduğu bölümleri listeleyiniz. SELECT BOL_NO, AVG (MAAS) FROM PERSONEL WHERE CINSIYET =.T. GROUP BY BOL_NO HAVING AVG (MAAS) > ; Personel tablosunda aşağıdaki bilgiler olsun Böl_no MAAS Cins T F F F T F T T. Yukarıda uygulanan SELECT komutu, her bölümdeki erkek personele ait ortalama MAAS maaşı hesaplayacak (erkek personel 1 ile belirlenmiştir.) ve erkek personel maaş ortalaması den yüksek olan bölümler listelenecektir. Komutun çıktısı aşağıdaki gibidir Böl_no Avg_MAAS BĠRDEN FAZLA TABLOYU ĠLĠġKĠLENDĠREREK SORGULAMA BirleĢtirme ( JOIN ) ĠĢlemi Birleştirme işlemini anlayabilmek için konumuzun başında anlattığımız personel ve bölüm tablolarının içinde yer alan bölümleri hatırlayalım. Personel Tablosu: SICIL_NO, SGNO, ADI, SOYADI, DOG-TAR, ADRES, CINSIYET, MAAS, BOL_NO, YONETICI_NO Bölüm Tablosu: BOLUM ADI, BOL_NO, YONETICI_NO sundan oluşuyordu Bu tablolar ile ilişkili olarak aşağıdaki soruyu soralım: ÖRNEK-27:

13 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 13 Çalışan her personel ve bu personelin yöneticisi ile ilişkili bilgiler nelerdir? Belirli bir personel ile ilişkili bilgiler personel tablosunun o personele ait satırında mevcuttur. Ancak personelin yöneticisi ile ilişkili bilgilerin bir kısmına ise bölüm tablosundan erişilebilir. Bu durum zorunlu olarak personel ile bölüm tabloları arasında ilişki kurulmasını gerektirir. Bu ilişki ancak müşterek bir alan yardımı ile kurulabilir. Müşterek alan burada bölüm numarasıdır ve personel tablosunda böl_no, bölüm tablosunda ise bölüm_no adı ile yer almaktadır. Müşterek alana göre personel ve bölüm tablolarının birleştirilmesi ( JOIN ) demek, her iki tablodaki tüm sütunları içeren yeni bir tablo oluşturmak demektir. Yalnız bu tabloda sadece her iki tabloda da mevcut olan bölüm numaraları ile ilişkili satırlar yer alacaktır. Birleştirme işlemi ile listeleme aşağıdaki SQL komutu ile gerçekleştirilmektedir SELECT *FROM PERSONEL, BOLUM WHERE PERSONEL. BOL_NO =BOLUM. BOLUM_NO; İlişkilendirme kolayca görülebileceği gibi WHERE PERSONEL. BOL_NO = BOLUM. BOLUM_NO Tablo adı Kolon adı İfadesi ile sağlanmaktadır. Aşağıdaki örnek veri için bu JOIN işlemi sonucu, aşağıdaki tabloda görülmektedir. PERSONEL TABLOSU SICIL_NO SGNO ADI SOYADI DOG_TAR ADRES CĠNSĠYET MAAS BOL _NO YONETICI_ NO Ali Can 60/05/01 Fatih Ayşe Şen 65/07/04 Kadıköy Akın Öncel 64/07/11 Üsküdar Can Öner 65/08/05 Fatih Beril Meral 62/07/08 Pendik Ayşe Cansu 63/08/07 Beşiktaş BOLUM TABLOSU BOLUM_ADI BOLUM_NO YONETICI_NO IS_BAS_TAR Satış /07/01 Muhasebe /08/02 Üretim /06/04 Eğitim /05/01 Bilgi işlem /02/05 Personel ve bölüm tablolarının müşterek alan olan bölüm numarası üzerinde JOIN birleştirme işlemine tabi tutulması sonucu elde edilen bilgi sadece her iki tabloda da aynı bölüm numaralarına ait satırlar alınarak birleştirilmiş ve her iki tablonun alanlarından oluşan büyük bir tablo halinde listelenecektir. UNION Sözcüğü UNION sözcüğü küme birleştirme işlemi görür. İki ayrı SELECT komutunun sonucunda elde edilen tabloların birleşimi işlemini görür. ÖRNEK-28: Adı Ahmet ve soyadı Caner olan kişi ve kişileri işletmenin yürüttüğü projelerde çalışan kişi olarak bulunduran projelerin isimlerini ve projelerin yürütüldüğü yerleri listeleyiniz. ( SELECT PROJE_ADI, YER FROM PROJE, BOLUM, PERSONEL WHERE BOL_NO=BOLUM_NO AND YONETICI_NO SGNO AND ADI= AHMET AND SOYADI = CANER ) UNION ( SELECT PROJE_ADI, YER FROM PROJE, CALISMA, PERSONEL WHERE PROJE_NO =PROJE_NO AND SGNO =SGNO AND ADI= AHMET AND SOYADI = CANER )

14 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 14 UNION sözcüğü ile iki ya da daha çok SELECT in sonucu olan tabloların küme birleşimi işlemine tabi tutulması için iki koşul gereklidir. SELECT komutları sonucunda elde edilecek tablolar aynı sayıda kolon içermelidirler. 1.SELECT Sonuç tablosu 2.SELECT Sonuç tablosu Sonuç tablolarının karşılıklı olarak kolonları aynı veri tipi ve aynı genişlikte olmalıdır. ANY Sözcüğü ÖRNEK-29: Satış bölümünde çalışan personelin herhangi birinden daha düşük maaş alan ve mühendislik bölümünde çalışan kişileri listeleyiniz; SELECT * FROM PERSONEL WHERE MAAS < ANY ( SELECT MAAS FROM PERSONEL WHERE BÖL_NO =2) AND BOL_NO =1; Bu çözümün eşdeğer ifadesi şöyledir; SELECT *FROM PERSONEL WHERE MAAS < ( SELECT MAX (MAAS) FROM PERSONEL WHERE BOL_NO =2) AND BOL_NO =1; Burada satış bölümü kodu 2 ve mühendislik bölümü kodu ise 1 olarak kabul edilmiştir. İkinci çözüm ifadesinden de anlaşılacağı gibi iç içe SELECT ifadesinde içteki SELECT sorgulaması sonucun; 2. Bölümde çalışan personelin içinde en yüksek maaş alan kişinin maaşı bulunmakta dıştaki SELECT ise mühendislik bölümünde bu maaştan düşük olan maaşa sahip kişiler listelenmektedir. Buradaki düşünce tarzı şöyledir: Mühendislik bölümünde çalışan ve satış bölümündeki en yüksek maaştan düşük maaş alan bir kişi satış bölümündeki herhangi bir maaştan düşük olma koşulunu sağlayacaktır. ANY sözcüğünün yerine tamamen eşdeğeri olan SOME sözcüğü de kullanılabilir. ALL Sözcüğü Hepsi, tamamı anlamındaki bu sözcük SELECT komutu içerisinde belirli bir koşulu sağlayan bir grup datanın tamamınca sağlanan koşullarla ilişkili olarak kullanılır. ÖRNEK-30: Satış bölümünde çalışan ve mühendislik bölümündeki personelin hepsinden daha fazla maaş alan personeli listeleyiniz. Satış bölümü kodu 2 ve mühendislik bölümü kodu1 olarak alınırsa; 1. Alternatif SELECT * FROM PERSONEL WHERE MAAS > ALL (SELECT MAAS FROM PERSONEL WHERE BOL_NO=1) AND BOL_NO=2; EXISTS Operatörü Var, mevcuttur anlamındaki bu sözcük, SQL de bir Boolean ( lojik, mantıksal) operatördür. İçteki SELECT komutunun sorgulaması sonucunda en az bir tablo satırı üretilmişse EXISTS operatörü true değerini, hiçbir tablo satırı üretilmemişse, EXISTS operatörü false değerini üretir. EXISTS operatörü, AND, OR ve NOT gibi diğer mantıksal operatörlerle birlikte de kullanılabilir. ÖRNEK-31: Numarası 27 olan parçayı satan satıcılarla ilişkili tüm bilgileri listeleyiniz. İlgili SELECT komutlarını yazabilmek için, sistemde satıcı adlı tabloda ve par_sat adlı tabloda aşağıdaki kolon ve verilerin olduğunu varsayalım;

15 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 15 FIRMA_NO ADI ADRES 1 Ali akın İstanbul 2 Ayşe can İstanbul 3 AkınPeker Ankara 4 Can Ozan İzmir 5 Mert Ak Antalya SELECT *FROM FIRMA WHERE EXISTS ( SELECT * FROM PARCA_FIRMA WHERE FIRMA_NO =FIRMA_NO AND PARCA_NO=27) ; Aşağıdaki sonuç elde edilir. FIRMA_NO ADI ADRES 1 Ali akın Istanbul 2 Ayşe can Istanbul Yukarıda da belirtildiği gibi, iç SELECT te WHERE I izleyen koşulu sağlayan satırlar PARCA_FIRMA içinde bulundukça EXISTS operatörü true değerini verecek bu durumda dış SELECT in WHERE kısmı doğru olacağı için o firma ile ilişkili bilgiler firma tablosundan listelenecektir. VĠEW OLUġTURMAK Veri tabanı kavramı içinde teorik olarak mevcut olan view (bakış ) terimi, farklı kullanıcıların veri tabanına nasıl baktıklarını ya da bakış açılarını anlatan terimdir. Bu anlamda bir kullanıcı fiziksel olarak mevcut olan tabloların sadece bir kısmı ile ilgilenir. VIEW OluĢturmanın Yararları 1.Veri Güvenliği Veri tabanı içinde bulunan tablolardaki bazı sütunlarda bulunan bilgilerin herkes tarafından görülmesi istenmeyebilir. ÖRNEK-32 Personelin maaşlarının herkes tarafından listelenebilir olması mahsurlu olabilir. Bu durumda personel adlı temel tablodan PERSVIEW adlı bir view oluşturulabilir: CREATE VIEW PERSVIEW AS SELECT SICIL_NO, SGNO, ADI, SOYADI, DOG_TAR, ADRES, CINSIYET, BOL_NO, YONETICI_NO FROM PERSONEL; PERSVIEW adlı view, herkesin kullanımına açık, personel adlı tablo ise yetkili kişiler dışındakilere, erişilemez hale getirilirse, maaşların herkes tarafından erişilebilir bilgi olması önlenmiş olur. Bir view den bilgi listelenmesi temel tablodan bilgi listelenmesinden farklı değildir. SELECT *FROM PERSVIEW; PERSVIEW den maaşlar hariç tüm personel bilgileri listelenecektir. Bir temel tablodaki aynı sütun isimleri kullanılmak zorunda değildir. 2.Sorgulamanın Daha Basit Hale Gelmesi Karmaşık sorgulamalarda, bazı SELECT komutlarının sonuçları diğer SELECT komutlarında kullanıldığında, sorgulanmanın düzenlenmesinde yanlışlıklar yapma olasılığını artar. Karmaşık sorgulamalar, View özelliği kullanılarak daha basit hale getirilebilir. Burada temel fikir şudur: Mademki bir view, bir sorgulama sonucu elde edilen bilgiyi (tabloyu) isimlendirerek elde edilen bir virtüel tablodur; o halde karmaşık SELECT komutu içinde, sonucu kullanacak başka bir SELECT komutu yerine, bu sonucu bir view olarak isimlendirerek, view adını kullanmak. Bazı durumlarda ise,

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler SQL'e Giriş SQL komutları kullanılarak aşağıdaki işlemler yapılabilir: Veritabanı nesnelerinin oluşturulması ve bu nesnelerle ilgili işlemlerin yapılması Bilgilerin istenilen koşullara göre görüntülenmesi

Detaylı

Veritabanı. SQL (Structured Query Language)

Veritabanı. SQL (Structured Query Language) Veritabanı SQL (Structured Query Language) SQL (Structured Query Language) 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

Detaylı

SQL Komutları (2) Uzm. Murat YAZICI

SQL Komutları (2) Uzm. Murat YAZICI SQL Komutları (2) Uzm. Murat YAZICI Sıralama Sıralama işlemi için SELECT ifadesinde ORDER BY kullanılır. Bu ifadede ASC kelimesi kullanılırsa sıralama küçükten büyüğe doğru (A-Z), DESC kullanılırsa büyükten

Detaylı

BÖLÜM 1. Yapisal Sorgulama Dili (SQL)

BÖLÜM 1. Yapisal Sorgulama Dili (SQL) BÖLÜM 1 Yapisal Sorgulama Dili (SQL) İlişkisel veri tabanı yönetim sistemleri (RDBS) modeli ilk önce 1970 yılında Dr.E.F. Codd tarafından tarif edilmiştir. SQL veya Structured English Query Language (SEQUEL),

Detaylı

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler Genel Kavramlar Veri Nedir? Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar Veri Tabanı Nedir? Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler Veritabanı Yönetim Sistemi (DBMS)Nedir?

Detaylı

YAPISAL SORGULAMA DİLİ (SQL)

YAPISAL SORGULAMA DİLİ (SQL) YAPISAL SORGULAMA DİLİ (SQL) OGRENCI Tablosu 1234 Zeynep Makina K 23.06.1984 1. Cad 3.4 CREATE TABLE VERİ TANIMLAMA DİLİ (VTD) Veritabanında yeni bir tablonun oluşturulmasını sağlar. Yukarıda tanımlanan

Detaylı

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır.

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır. 18 SQL SORGU DİLİ SQL (Structured Query Language) yapısal sorgu dili, veritabanı yönetim sistemlerinin standart programlama dili olarak bilinmektedir. SQL dilinin Access içinde sorgu pencerelerinde veya

Detaylı

VERİTABANI. SQL (Structured Query Language)

VERİTABANI. SQL (Structured Query Language) VERİTABANI SQL (Structured Query Language) SQL'de Gruplama Bir tablonun satırları gruplara ayrılarak fonksiyonların bunlara uygulanması mümkündür. Gruplara ayırmak için SELECT deyimi içerisinde GROUP BY

Detaylı

SQL Kod ile Tablo Oluşturma

SQL Kod ile Tablo Oluşturma SQL Kod ile Tablo Oluşturma Aşağıdaki SQL kodları Veri tabanı hazırlama programında yazılıp çalıştırıldığı zaman PERSONEL adında bir tablo oluşturulur ve bu tablonun sütunları Personel_no, Adı, Soyadı

Detaylı

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Sorgulama Yaparken Gruplama (GROUP BY) 2- Gruplamada Koşul Kullanımı (HAVING) 3- Sorgulama Yaparken Sıralama (ORDER BY) 4- Sorgulamalarda İşlem Yapma 5- Güncellemelerde İşlem

Detaylı

VERİTABANI ve YÖNETİMİ

VERİTABANI ve YÖNETİMİ VERİTABANI ve YÖNETİMİ Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü 2 BÖLÜM -7- VERİLERİ GRUPLAYARAK ANALİZ ETMEK 3 Genel Bakış Grup fonksiyonlarının tanımlanması, Gruplama işlemlerini, Gruplama

Detaylı

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır.

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır. SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır. Bu dersimizde biz Microsoft SQL Server veritabanı sistemini kullanmayı öğreneceğiz. SQL Nedir? SQL Structured Query Language

Detaylı

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız.

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Basit Sorgulamalar a. Tablodan tüm alanları sorgulama b. Tablodan alanları belirterek sorgulama c. Tekrarlı satırları önleme d. Belirli sayıda veya oranda sorgulama yapma

Detaylı

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER VERİTABANI SORGULARI İÇİNDEKİLER Select İfadesi Insert İfadesi Update İfadesi Delete İfadesi Verileri Sıralamak Verileri Gruplandırmak Veriler Üzerinde Arama Yapmak NESNE TABANLI PROGRAMLAMA I Uzm. Orhan

Detaylı

SQL e Giriş. Uzm. Murat YAZICI

SQL e Giriş. Uzm. Murat YAZICI SQL e Giriş Uzm. Murat YAZICI SQL (Structured Query Language) - SQL Türkçe de Yapısal Sorgulama Dili anlamına gelmektedir ve ilişkisel veritabanlarında çok geniş bir kullanım alanına sahiptir. - SQL ile

Detaylı

SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir.

SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir. SQL'e Giriş SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir. SQL (Structured Query Language) kendisi bir programlama

Detaylı

ACCESS PLATFORMUNDA SQL

ACCESS PLATFORMUNDA SQL ACCESS PLATFORMUNDA SQL (STRUCTURED QUERY LANGUAGE) KODLAMA ÖRNEKLERİ DISTINCT : Bir alanda birbirinin aynı kayıtlar bulunabilir. Öğrenciler tablosundaki aynı isimde öğrencilerin bulunması durumunda aynı

Detaylı

SORGULAR. Öğr.Gör.Volkan Altıntaş

SORGULAR. Öğr.Gör.Volkan Altıntaş SORGULAR Öğr.Gör.Volkan Altıntaş SORGULAR VE ÇEŞİTLERİ Seçme Sorguları: En sık kullanılan sorgu türüdür. Seçme sorguları, bilgileri veri sayfası görünümü nde gösteren veri tabanı nesnesi türüdür. Sorgu,

Detaylı

Örnek Veritabanı Çalışması. Kütüphane Veritabanı

Örnek Veritabanı Çalışması. Kütüphane Veritabanı Örnek Veritabanı Çalışması Kütüphane Veritabanı İçindekiler Kütüphane veritabanı şeması Tabloların oluşturulması Tablolar arası ilişkilerin varlık ilişki ve ilişkisel modeldeki gösterimleri Sorgu örnekleri

Detaylı

Basit SQL Sorguları Veritabanından verilerin SELECT cümleleri ile alınması işlemine sorgulama denir.

Basit SQL Sorguları Veritabanından verilerin SELECT cümleleri ile alınması işlemine sorgulama denir. SQL SELECT CÜMLELERİ Oracle birçok kullanışlı ve güçlü özellikleri olan bir veritabanıdır. Bu özelliklerinin birçoğu SQL ile ilgilidir. VTYS lerinin çoğunluğunda veriler ile çalışmak için SQL kullanılmaktadır.

Detaylı

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim' Bu Derste Öğrenecekleriniz: 1- Veri Tabanı Adı Değiştirme 2- Nesnelerin Adını Değiştirme a. Tablo Adı Değiştirme b. Alan Adı Değiştirme c. Constraint (Kısıtlama) Adı Değiştirme 3- Tablo Düzenleme Komutları

Detaylı

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon ORACLE GİRİŞ Oracle ile SQL Server ın karşılaştıralım. 1 Oracleda veritabanı yerine kullanıcı oluşturulur. Kullanıcılar veritabanı gibi davranır. 2 Tablo oluşturma, değiştirme ve silme kodları aynı. 3

Detaylı

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) Genel SQL SQL çok yüksek seviyeli bir dildir. Biraz ingilizce bilgisi gerektirir. Programlama dillerine göre öğrenilmesi çok daha kolaydır. Çünkü programlama dillerindeki

Detaylı

Mysql Veritabanı Komutları

Mysql Veritabanı Komutları Mysql Veritabanı Komutları Mysql Veri Tabanı Komutları Hazırlayan : M. Başar ACAROĞLU Kaynaklar: http://www.hrzafer.com/sql-dersleri http://www.w3schools.com/sql/default.asp Veri Tabanı Nedir? Mysql Veritabanı

Detaylı

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili)

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili) SQL'e Giriş SQL komutları kullanılarak aşağıdaki işlemler yapılabilir: Veritabanı nesnelerinin oluşturulması ve bu nesnelerle ilgili işlemlerin yapılması Bilgilerin istenilen koşullara göre görüntülenmesi

Detaylı

İNTERNET PROGRAMCILIĞI 2 11. HAFTA. MYSQL ile VERİTABANI İŞLEMLERİ - 1. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Veritabanı Oluşturma, Silme

İNTERNET PROGRAMCILIĞI 2 11. HAFTA. MYSQL ile VERİTABANI İŞLEMLERİ - 1. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Veritabanı Oluşturma, Silme İNTERNET PROGRAMCILIĞI 2 11. HAFTA İçindekiler Veritabanı Oluşturma, Silme MYSQL ile VERİTABANI İŞLEMLERİ - 1 Tablo Oluşturma, Silme Tabloya Bilgi Girme Veritabanı Sorgulamaları Hedefler Mysql komutları

Detaylı

Veritabanlarına ve SQL'e Giriş. Devrim GÜNDÜZ. Teknoloji Destek Merkezi -- www.tdmsoft.com. devrim@gunduz.org

Veritabanlarına ve SQL'e Giriş. Devrim GÜNDÜZ. Teknoloji Destek Merkezi -- www.tdmsoft.com. devrim@gunduz.org Veritabanlarına ve SQL'e Giriş Devrim GÜNDÜZ Teknoloji Destek Merkezi -- www.tdmsoft.com devrim@gunduz.org http://seminer.linux.org.tr http://www.gunduz.org Giriş Bu seminerde, aşağıdaki konular anlatılacaktır:

Detaylı

DAO İLE SQL KOMUTLARI. Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım.

DAO İLE SQL KOMUTLARI. Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım. DAO İLE SQL KOMUTLARI Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım. SQL-1 SELECT En basit SQL cümleciği oluşturmak için SELECT sözcüğü

Detaylı

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1 5 SQL- Yapısal Sorgulama Dili Veritabanı 1 SQL- Yapısal Sorgulama Dili SQL ifadeleri yapısal olarak üç gruba ayrılır. Veri Tanımlama Dili (DDL - Data Definition Language) Veri İşleme Dili (DML - Data Manipulation

Detaylı

Veri Tabanı Programlamaya Giriş

Veri Tabanı Programlamaya Giriş Veri Tabanı Programlamaya Giriş Kitap özeti Veri Tabanı Programlamaya Giriş SQL insanların veritabanı sistemleri ile konuşmasını sağlayan popüler bir dildir. Bu dil sayesinde, bir veritabanından kayıtları

Detaylı

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language)

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language) Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language) Konular Yapısal SQL Komutları Gruplama İşlemi SQL Fonksiyonları Kaynaklar 2 SQL (Structured Query Language) SQL Carlos

Detaylı

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301)

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301) Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301) GENEL DERS BİLGİLERİ Öğretim Elemanı : Öğr. Gör. Erdal GÜVENOĞLU Ofis : MUH 313 Ofis Saatleri : Pazartesi: 10.00-12.00,

Detaylı

T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR

T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR YÜKSEK LİSANS PROJESİ Mehmet Emin AKKAYA Danışman: Yrd. Doç.

Detaylı

Oracle da kullanılan veri tipleri:

Oracle da kullanılan veri tipleri: ORACLE A GİRİŞ Oracle ile SQL Server ı karşılaştıralım, 1 Oracle da veritabanı yerine kullanıcı oluşturulur. Kullanıcılar veritabanı gibi davranır. 2 Tablo oluşturma, yapısını değiştirme, silme kodları

Detaylı

Bilgisayar Uygulamaları. MySql

Bilgisayar Uygulamaları. MySql MySql MySql,; Oracle, Progress, MsSql, PostgreSql gibi veri tabanı programıdır. Kullanılan dil SQL (Structured Query Language) yapısal sorgulama dilidir. Lisansı GNU General Public License olarak bilinen

Detaylı

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Birden Fazla Tablodan Sorgulama 2- Tablo Birleştirme işlemleri (JOIN) a. INNER JOIN b. OUTER JOIN i. LEFT OUTER JOIN ii. RIGHT OUTER JOIN iii. FULL OUTER JOIN 3- Tablo Ekleme

Detaylı

SQL'e Giriş 2. CREATE TABLE tabloadı (kolon isimleri ve veri türleri) (BOLUM_NO NUMBER, BOLUM_ADI CHAR(10));

SQL'e Giriş 2. CREATE TABLE tabloadı (kolon isimleri ve veri türleri) (BOLUM_NO NUMBER, BOLUM_ADI CHAR(10)); SQL'e Giriş 2 VERİ TANIMLAMA (DDL) İŞLEMLERİ Genel Yazılımı, 1. TABLOLARIN OLUŞTURULMASI (CREATE TABLE): CREATE TABLE tabloadı (kolon isimleri ve veri türleri) Örnek 1: CREATE TABLE BOLUM (BOLUM_NO NUMBER,

Detaylı

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu SQL'DE VERİ İŞLEME KOMUTLARI SQL'de verileri işlemek için kullanılan komutlara DML (Data Manipulation Language Veri İşleme Dili) denilmektedir. Bu komutlar ile oluşturulan ifadeler tablolara kayıt eklemek,

Detaylı

Bölüm 3: DML Veri İşleme Dili

Bölüm 3: DML Veri İşleme Dili Bölüm 3: DML Veri İşleme Dili -15- Dr. Serkan DİŞLİTAŞ DML (Data Manipulation Language Veri İşleme Dili) : Bu kategorideki SQL komutları veriler üzerinde işlemler yapmaya yönelik ifadeleri içermektedir.

Detaylı

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) Neden SQL? SQL çok yüksek seviyeli bir dildir. İngilizce bilen herkes bu dili kolayca öğrenebilir. Programlama dillerine göre öğrenilmesi çok daha kolaydır. Çünkü programlama

Detaylı

Tablolar Arası İlşikiler ve Alan Özellikleri. Şekil 1. Magaza veritabanının tabloları ve tablolar arasındaki ilişkiler

Tablolar Arası İlşikiler ve Alan Özellikleri. Şekil 1. Magaza veritabanının tabloları ve tablolar arasındaki ilişkiler SQL'de Veri İşleme Komutları SQL'de verileri işlemek için kullanılan komutlara DML (Data Manipulation Language Veri İşleme Dili) denilmektedir. Bu komutlar ile oluşturulan ifadeler tablolara kayıt eklemek,

Detaylı

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı Öğr. Gör. Cansu AYVAZ GÜVEN VERITABANI-I SQL (Structured Query Language) SQL (Structured Query Language) SQL, ilişkisel veritabanlarındaki

Detaylı

SQL Query and Table Application

SQL Query and Table Application SQL Query and Table Application Elbistan Meslek Yüksek Okulu 2012 2013 Bahar Yarıyılı Öğr. Gör. Murat KEÇECİOĞLU 24-25 Nis. 2013 Sorgulama İşlemleri SQL de sorgulama işlemleri SELECT deyimi yardımıyla

Detaylı

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

VERĐTABANI YÖNETĐM SĐSTEMLERĐ VERĐTABANI YÖNETĐM SĐSTEMLERĐ Öğr.Gör.Sedat Telçeken ANADOLU ÜNĐVERSĐTESĐ FEN FAKÜLTESĐ MATEMATĐK BÖLÜMÜ 2005 2006 Bahar Dönemi D M L Bilindiği üzere SQL tablolar üzerinde sorgulama yapar. Bu sorgular

Detaylı

Çok tablolu sorgulamalar

Çok tablolu sorgulamalar Çok tablolu sorgulamalar Eğer birden fazla tabloda yer alan verilerin tek bir sorgu ile görüntülenmesi istenirse FROM kısmında ilgili tablolar araya virgül konularak yazılmalı, WHERE kısmında ise o tabloları

Detaylı

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir.

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir. Oracle (Devam) SELECT INTO Deyimi Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir. Genel ifade: SELECT kolonisimler INTO

Detaylı

Veri Tabanı Yönetim Sistemleri Bölüm - 4

Veri Tabanı Yönetim Sistemleri Bölüm - 4 Veri Tabanı Yönetim Sistemleri Bölüm - 4 İçerik SQL e Giriş. SQL Yapısal Sorgulama Dili. Temel SQL Komutları: Sorgulama İşlemleri SELECT deyiminin temel yapısı Seçme İşlemi Atma İşlemi Aritmetik İfadelerin

Detaylı

3. Hafta Tablo İşlemleri BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri. 1.2. Kısıtlamalar (Constraints)

3. Hafta Tablo İşlemleri BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri. 1.2. Kısıtlamalar (Constraints) Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri 1.1. Tablo Oluşturma 1.2. Tablo Oluşturmada Kısıtlamalar Constraints 1.3. Tablo Silme a. NULL, NOT NULL b. PRIMARY KEY c. UNIQUE d. FOREIGN KEY e. CHECK f.

Detaylı

Veri Tabanı-I 9.Hafta

Veri Tabanı-I 9.Hafta Veri Tabanı-I 9.Hafta SELECT komutu 1 SELECT YAPISI SELECT FROM [WHERE ] , veritabanından değerleri alınacak olan kolonların listesidir. kolon_listesi

Detaylı

BİLİŞİM TEKNOLOJİLERİ

BİLİŞİM TEKNOLOJİLERİ T.C. MİLLÎ EĞİTİM BAKANLIĞI BİLİŞİM TEKNOLOJİLERİ VERİ TABANI YÖNETİMSEL FONKSİYONLARI Ankara, 2013 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında yer alan

Detaylı

TRIGGER. Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir.

TRIGGER. Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir. TRIGGER Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir. DML ve DDL trigger lar olarak ikiye ayırmak mümkündür. DML (Data Manipulation

Detaylı

Ġşlem tablosu kavramını tanımlamak ve işlem tablolarının işlevlerini öğrenmek. Ġşlem tablolarının temel kavramlarını tanımlamak.

Ġşlem tablosu kavramını tanımlamak ve işlem tablolarının işlevlerini öğrenmek. Ġşlem tablolarının temel kavramlarını tanımlamak. Amaçlarımız 2 Ġşlem tablosu kavramını tanımlamak ve işlem tablolarının işlevlerini öğrenmek. Ġşlem tablolarının temel kavramlarını tanımlamak. Microsoft Excel 2010 da bilgi girişi yapabilmek. Excel de

Detaylı

Birden Çok Tabloda Sorgulama (Join)

Birden Çok Tabloda Sorgulama (Join) Birden Çok Tabloda Sorgulama (Join) Join(Birleştirici), iki ya da daha fazla tabloyu aynı anda sorgulayarak bir sonuç tablosu (result table) oluşturmaya yarar. Örneğin: İki tabloyu birleştirici ile birleştirerek

Detaylı

Veritabanına Giriş. Oğuzhan Ceylan. 19 Eylül 2011

Veritabanına Giriş. Oğuzhan Ceylan. 19 Eylül 2011 Veritabanına Giriş Oğuzhan Ceylan 19 Eylül 2011 Outline Veritabanı MYSQL Mysql Sorgu Komutları Bir veritabanı yaratmak ve kullanmak Veritabanı Veritabanı Verittabanı hangi alanlarda kullanılıyor. Web sitesi

Detaylı

İNTERNET TABANLI PROGRAMLAMA- 12.ders

İNTERNET TABANLI PROGRAMLAMA- 12.ders İNTERNET TABANLI PROGRAMLAMA- 12.ders TEMEL SQL KULLANIMLARI Örnekleri uygulamak için aşağıdaki gibi bir altyapı hazırlayalım. using System.Data.OleDb; *************** protected void Button1_Click(object

Detaylı

Veri Tabanı Yönetim Sistemleri Bölüm - 6

Veri Tabanı Yönetim Sistemleri Bölüm - 6 Veri Tabanı Yönetim Sistemleri Bölüm - 6 İçerik Fonksiyonlar Tek Satır Fonksiyonlar Karakter Fonksiyonlar Sayısal Fonksiyonlar Tarih ve Saat Fonksiyonları Dönüştürücü Fonksiyonlar Çoklu Satır Fonksiyonlar

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ I

VERİ TABANI YÖNETİM SİSTEMLERİ I BÖLÜM 12 12. SQL de YÖNETİMSEL FONKSİYONLAR 12.1. VIEWS ( Tablo Görünümü) Tablo görünümleri veri tabanında tanımı olan tablolardan sorgulama sonucunda elde edilir. Tabloların tersine fiziksel bir yer tutmazlar.

Detaylı

BTP203 VERİTABANI YÖNETİM SİSTEMLERİ

BTP203 VERİTABANI YÖNETİM SİSTEMLERİ BTP203 VERİTABANI YÖNETİM SİSTEMLERİ Öğr.Gör.Dr. Sedat Telçeken Porsuk Meslek Yüksek Pkulu Bilg. Tekn. Bölümü 2011 2012 Güz Dönemi İLİŞKİSEL CEBİR (Relational Algebra) İlişkisel cebir, biçimsel sorgulama

Detaylı

Maltepe Üniversitesi Endüstri Mühendisliği Bölümü Veri Tabanı Yönetimi (END 210)

Maltepe Üniversitesi Endüstri Mühendisliği Bölümü Veri Tabanı Yönetimi (END 210) Maltepe Üniversitesi Endüstri Mühendisliği Bölümü Veri Tabanı Yönetimi (END 210) GENEL DERS BİLGİLERİ Öğretim Elemanı : Öğr.Gör. Erdal GÜVENOĞLU Ofis : MUH 312 Ofis Saatleri : Pazartesi: 14:00 14:50, Salı:

Detaylı

VERİ TABANI ve YÖNETİMİ

VERİ TABANI ve YÖNETİMİ VERİ TABANI ve YÖNETİMİ Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü 2 BÖLÜM -12- TETİKLEYİCİ (TRIGGER) 3 Giriş Trigger lar Trigger lar Ne Zaman Kullanılmalıdır? Klasik Trigger ların Özellikleri

Detaylı

15 Aralık 2011 / Perşembe. www.arifceylan.com/sql,www.arifceylan.com/default.aspx http://www.arifceylan.com/sql/default.aspx

15 Aralık 2011 / Perşembe. www.arifceylan.com/sql,www.arifceylan.com/default.aspx http://www.arifceylan.com/sql/default.aspx 15 Aralık 2011 / Perşembe www.arifceylan.com/sql,www.arifceylan.com/default.aspx http://www.arifceylan.com/sql/default.aspx veri sorgulamak için select sorguları: Tüm tabloyu seçmek için * Select * from

Detaylı

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir.

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir. T-SQL KODLARİ İÇERİSİNE AÇIKLAMA EKLEME Bir veya daha fazla satırın çalıştırılmasını Önlemek için veya /*... */" ifadeleri kullanılır. -- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak

Detaylı

Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir.

Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir. TRIGGER Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir. Herhangi bir tablo üzerinde yapılan, insert, update veya

Detaylı

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II Değişken Tanımlama Ve Akış Kontrol Deyimleri Değişken Tanımlama Değişken isimlerinin başında @ sembolü bulunur. @ad, @soyad, @tarih değişken isimlerine birer örnektir.

Detaylı

BÖLÜM 11. YAPISAL SORGULAMA DİLİ (SQL) Amaçlar:

BÖLÜM 11. YAPISAL SORGULAMA DİLİ (SQL) Amaçlar: BÖLÜM 11. YAPISAL SORGULAMA DİLİ (SQL) Amaçlar: Yapısal Sorgulama Dilinin temellerini Kavramlarını öğreneceksiniz İçindekiler: 11.1 Giriş 11.2 SQL Komutları 1 11. YAPISAL SORGULAMA DİLİ (SQL) 11.1 Giriş

Detaylı

UZAKTAN EĞİTİM MERKEZİ

UZAKTAN EĞİTİM MERKEZİ ÜNİTE 2 VERİ TABANI İÇİNDEKİLER Veri Tabanı Veri Tabanı İle İlgili Temel Kavramlar Tablo Alan Sorgu Veri Tabanı Yapısı BAYBURT ÜNİVERSİTESİ UZAKTAN EĞİTİM MERKEZİ BİLGİSAYAR II HEDEFLER Veri tabanı kavramını

Detaylı

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir.

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir. SQL PROGRAMLAMA BATCH Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı deyimidir. SELECT. UPDATE...... DELETE.. BATCH BATCH Özellikleri 1- Bir batch içinde bir deyimde yazım hatası olduğunda

Detaylı

13 Aralık 2007. Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz

13 Aralık 2007. Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz 13 Aralık 2007 Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL Đlgili Modül/ler : Raporlar KULLANICI TANIMLI RAPORLAR Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz Kendi isteklerinize özel rapor tasarımları

Detaylı

Veri Tabanı-I 1.Hafta

Veri Tabanı-I 1.Hafta Veri Tabanı-I 1.Hafta 2010-2011 Bahar Dönemi Mehmet Akif Ersoy Üniversitesi Meslek Yüksekokulu Burdur 2011 Muhammer İLKUÇAR 1 Veri ve Veri Tabanı Nedir? Veri Bir anlamı olan ve kaydedilebilen

Detaylı

Coğrafi Bilgi Sistemlerine Giriş. Ünite 5 - Veri Tabanı Yönetim Sistemleri

Coğrafi Bilgi Sistemlerine Giriş. Ünite 5 - Veri Tabanı Yönetim Sistemleri Coğrafi Bilgi Sistemlerine Giriş Ünite 5 - Veri Tabanı Yönetim Sistemleri İçerik Temel kavramlar Veri tabanı modelleri Normalizasyon Coğrafi Bilgi Sistemlerinde veri tabanı yönetimi Temel kavramlar Veri

Detaylı

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

VERĐTABANI YÖNETĐM SĐSTEMLERĐ VERĐTABANI YÖNETĐM SĐSTEMLERĐ Öğr.Gör.Sedat Telçeken ANADOLU ÜNĐVERSĐTESĐ FEN FAKÜLTESĐ MATEMATĐK BÖLÜMÜ 2005 2006 Bahar Dönemi KARMAŞIK SORGULAR ALT SORGU: Sorgu esnasında; bir sorgudan elde edilen bir

Detaylı

10-Veri Tabanları. www.cengizcetin.net

10-Veri Tabanları. www.cengizcetin.net 10-Veri Tabanları 1 VERİ TABANI VERİTABANI (DATABASE) Birbiri ile ilişkili bir veya daha fazla tablodan oluşan bilgi topluluğudur. Veri tabanındaki tablolara ulaşılarak sorgulama yapılır ve istenilen bilgiler

Detaylı

Herhangi bir tablonun tekrarlı veriler içerdiği duruma birinci normal form denir. Birinci normal formu Aşağıdaki tablo ile ele alacağız.

Herhangi bir tablonun tekrarlı veriler içerdiği duruma birinci normal form denir. Birinci normal formu Aşağıdaki tablo ile ele alacağız. Normalleştirme ve Uygulaması Normalleştirme Neden Uygulanır: İlişkisel veritabanı oluşturmak için normalleştirmeyi bilmek çok önemlidir. Normalleştirme işlemini anlayabilmek için ise fonksiyonel bağımlılık

Detaylı

Veri Tabanı Yönetim Sistemleri Bölüm - 7

Veri Tabanı Yönetim Sistemleri Bölüm - 7 Veri Tabanı Yönetim Sistemleri Bölüm - 7 İçerik Alt Sorgular Çoklu Tablolar (Tabloların Birleştirilmesi) Görünümler R. Orçun Madran 2 Alt Sorgular Uygulamada, bir sorgudan elde edilen sonuç, bir diğer

Detaylı

VERİ TABANI ve YÖNETİMİ

VERİ TABANI ve YÖNETİMİ VERİ TABANI ve YÖNETİMİ Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü 2 BÖLÜM -10- FONKSİYONLAR 3 Giriş Geçen haftaki derslerimizde Görünümleri (View) ve Stored Procedure (SP) leri öğrendik. Bu hafta

Detaylı

VİSUAL BASİC İN VERİ TABANLARI İLE ETKİLEŞİMİ

VİSUAL BASİC İN VERİ TABANLARI İLE ETKİLEŞİMİ VİSUAL BASİC İN VERİ TABANLARI İLE ETKİLEŞİMİ VERİ TABANI SİSTEMİ Veri tabanı kavramı, bilgi işlem dünyasında uzun tecrübe ve aşamalardan sonra ulaşılmış bir kavramdır ve klasik dosya yönetimine bir alternatif

Detaylı

Emrah UYSAL www.emrahuysal.com 1

Emrah UYSAL www.emrahuysal.com 1 ORACLE DERS 2 BİRDEN FAZLA TABLO ÜZERİNDE ÇALIŞMAK(JOIN İŞLEMLERİ) Şekilde görüldüğü gibi Employees tablosundan employee_id ve department_id alanı Departments tablosundan ise department_name alanı kullanılıp

Detaylı

TESİ. indeks. söylenebilir?? bir ilişkidir d) Hiçbiri. veya somutlaştırılmış. düzeyidir? sağlayabilir? sına. d) Hepsi. olabilir? c) Verilerin d) Hepsi

TESİ. indeks. söylenebilir?? bir ilişkidir d) Hiçbiri. veya somutlaştırılmış. düzeyidir? sağlayabilir? sına. d) Hepsi. olabilir? c) Verilerin d) Hepsi 1. 2. 3. 4. 5. 6. Görünüm (view) için özellikle aşağıdakilerden hangisi söylenebilir?? a) Veritabanındaki kayıtlı verileri düzenlemek, yönetmek ve elde etmek için kullanılan bir dildir b) Bir ilişkinin

Detaylı

MySQL, PostgreSQL, Oracle, Sybase, MsSQL, Berkeley, Firebird, Ms access

MySQL, PostgreSQL, Oracle, Sybase, MsSQL, Berkeley, Firebird, Ms access 1. SQL Nedir? SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir. SQL herhangi bir veri tabanı ortamında kullanılan bir

Detaylı

SPSS-Tarihsel Gelişimi

SPSS-Tarihsel Gelişimi SPSS -Giriş SPSS-Tarihsel Gelişimi ilk sürümü Norman H. Nie, C. Hadlai Hull ve Dale H. Bent tarafından geliştirilmiş ve 1968 yılında piyasaya çıkmış istatistiksel analize yönelik bir bilgisayar programıdır.

Detaylı

1. Hafta MS SQL Server 2008 Kurulum ve Tanıtımı BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: Kurulum:

1. Hafta MS SQL Server 2008 Kurulum ve Tanıtımı BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: Kurulum: Bu Derste Öğrenecekleriniz: 1- MS SQL Server 2008 Kurulumu ve Tanıtımı 2- Komut Kullanarak Veritabanı Oluşturma ve Silme 3- SQL Yazım Kuralları Kurulum: Sistem gereksinimleri: Desteklenen işletim sistemleri:

Detaylı

DML işlemleri. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı. 12 15 May. 2015. Öğr. Gör. Murat KEÇECĠOĞLU

DML işlemleri. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı. 12 15 May. 2015. Öğr. Gör. Murat KEÇECĠOĞLU DML işlemleri Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı 12 15 May. 2015 Öğr. Gör. Murat KEÇECĠOĞLU DML-Data Manipulation Lanquage : Buna Türkçe olarak veri işleme dili diyebiliriz. DML komutları

Detaylı

BİLİŞİM TEKNOLOJİLERİ

BİLİŞİM TEKNOLOJİLERİ T.C. MİLLÎ EĞİTİM BAKANLIĞI BİLİŞİM TEKNOLOJİLERİ VERİ TABANINDA SORGULAR 481BB0037 Ankara, 2012 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında yer alan yeterlikleri

Detaylı

İNTERNET PROGRAMCILIĞI DERSİ

İNTERNET PROGRAMCILIĞI DERSİ İNTERNET PROGRAMCILIĞI DERSİ Dersin Modülleri İnternet Programcılığı 1 İnternet Programcılığı 2 İnternet Programcılığı 3 İnternet Programcılığı 4 İnternet Programcılığı 5 Kazandırılan Yeterlikler Programlama

Detaylı

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri ORACLE DA KÜRSÖRLER Gerekli sistem değişkenleri SQL%ISOPEN : kürsör açıksa değeri true, kapalı ise değeri false SQL%ROWCOUNT : sql ile işlem gören kayıt sayısı bulunur. SQL%FOUND : sql işlemi sonucu, en

Detaylı

BİLİŞİM TEKNOLOJİLERİ

BİLİŞİM TEKNOLOJİLERİ T.C. MİLLÎ EĞİTİM BAKANLIĞI BİLİŞİM TEKNOLOJİLERİ VERİ TABANINDA SORGULAR 481BB0037 Ankara, 2012 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında yer alan yeterlikleri

Detaylı

8 Aralık 2011 / Perşembe. Veri Tabanına Giriş

8 Aralık 2011 / Perşembe. Veri Tabanına Giriş 8 Aralık 2011 / Perşembe Veri Tabanına Giriş Veri (Data), bir veya birden fazla bilgiden oluşan bir kümedir. İsim, yaş, telefon numarası gibi bilgiler birer veridir. Veri Tabanı (Database) : Temel olarak

Detaylı

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011 Adım Adım SPSS 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü Y. Doç. Dr. İbrahim Turan Nisan 2011 File (Dosya) Menüsü Excel dosyalarını SPSS e aktarma Variable View (Değişken Görünümü 1- Name (İsim - Kod)

Detaylı

BİLİŞİM TEKNOLOJİSİNİN TEMELLERİ DERSİ

BİLİŞİM TEKNOLOJİSİNİN TEMELLERİ DERSİ BİLİŞİM TEKNOLOJİSİNİN TEMELLERİ DERSİ 1. İşlemci nedir? İşlemci, bilgisayarın birimlerinin çalışmasını ve bu birimler arasındaki veri akışını kontrol eden, veri işleme görevlerini yerine getiren elektronik

Detaylı

Kullanıcı tanımlı fonksiyonlar SQL2000 ile gelen özelliklerden biridir. Fonksiyonlar tek bir değer veya tablo döndürmek için kullanılır.

Kullanıcı tanımlı fonksiyonlar SQL2000 ile gelen özelliklerden biridir. Fonksiyonlar tek bir değer veya tablo döndürmek için kullanılır. KULLANICI TANIMLI FONKSİYONLAR Kullanıcı tanımlı fonksiyonlar SQL2000 ile gelen özelliklerden biridir. Fonksiyonlar tek bir değer veya tablo döndürmek için kullanılır. Fonksiyonları veritabanı programlamada

Detaylı

İnternet Programcılığı

İnternet Programcılığı 1 PHP le Ver tabanı İşlemler Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1.1 Veritabanı Nedir? Veritabanı

Detaylı

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

VERĐTABANI YÖNETĐM SĐSTEMLERĐ VERĐTABANI YÖNETĐM SĐSTEMLERĐ Öğr.Gör.Sedat Telçeken ANADOLU ÜNĐVERSĐTESĐ FEN FAKÜLTESĐ MATEMATĐK BÖLÜMÜ 2005 2006 Bahar Dönemi SQL Fonksiyonları Fonksiyonlar SQL içinde bazı hesaplamaları yapabilmektedir.

Detaylı

STORED PROCEDURE LER (Saklı Yordamlar)

STORED PROCEDURE LER (Saklı Yordamlar) STORED PROCEDURE LER (Saklı Yordamlar) Eskiden yazılımlar, sadece prosedür denilen kod parçalarından oluşurdu. Her prosedür belli bir işlevi yerine getirmek için yazılmış kod parçalarıdır. Mesela, 2 sayı

Detaylı

PostgreSQL ve PL/pgSQL

PostgreSQL ve PL/pgSQL PostgreSQL ve PL/pgSQL Adnan DURSUN Uygulama tasarım ve geliştiricisi @ : adnandursun.at.asrinbilisim.com.tr : +AdnanDURSUN Sunum Akışı PL/pgSQL nedir PL/pgSQL neden kullanmalıyız PL/pgSQL in yapısı Saklı

Detaylı

KULLANICI TANIMLI FONKSİYONLAR (Devam)

KULLANICI TANIMLI FONKSİYONLAR (Devam) KULLANICI TANIMLI FONKSİYONLAR (Devam) Skaler değerli fonksiyon örneği: Parametre müşteri grubu olacak, eğer grubu parametresi değeri NULL olursa, tüm müşteri sayısını, NULL değilse girilen gruptaki müşteri

Detaylı

VERİTABANI & VERİTABANI YÖNETİMİ

VERİTABANI & VERİTABANI YÖNETİMİ VERİ NEDİR? Dağınık bilgi kümesidir. VERİTABANI & VERİTABANI YÖNETİMİ Veri, anlamlı bir şekilde düzenlendiği zaman yararlı bilgi olur. Dr. Mehmet AKSARAYLI VERİTABANI NEDİR? Birbiri ile ilişkili veriler

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları

Detaylı

1. Excel Dönüşümü : 2. Rapor Master Tanımları :

1. Excel Dönüşümü : 2. Rapor Master Tanımları : Programın Amacı : Bu Program As/400 Sistemindeki herhangi bir veya birden fazla file ı kullanarak istenilen şekilde sorgulama yaparak elde edilen bilgileri Excel Formatında Pc deki istenilen bir yere kaydetmek.

Detaylı

08221 Veri Tabanı II. Elbistan Meslek Yüksek Okulu 2015 2016 GÜZ Yarıyılı. 20-23 Eki. 2015. Öğr. Gör. Murat KEÇECĠOĞLU

08221 Veri Tabanı II. Elbistan Meslek Yüksek Okulu 2015 2016 GÜZ Yarıyılı. 20-23 Eki. 2015. Öğr. Gör. Murat KEÇECĠOĞLU 08221 Veri Tabanı II Elbistan Meslek Yüksek Okulu 2015 2016 GÜZ Yarıyılı 20-23 Eki. 2015 Öğr. Gör. Murat KEÇECĠOĞLU T-SQL KOMUTLARI Veritabanları ANSI SQL dediğimiz standart dil kullanılmaktadır. Bu dil

Detaylı

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri Konular Veritabanı Tasarım Aşamaları Veri Modeli Nedir? Veri Modeli Temel Bileşenleri İş Kuralları (Business Rules) İş Kurallarını Veri

Detaylı