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



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

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

STORED PROCEDURE LER (Saklı Yordamlar)

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 DA KÜRSÖRLER. Gerekli sistem değişkenleri

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

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

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.

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir, aksi durumda hata olur.

PostgreSQL ve PL/pgSQL

SQL Komutları (2) Uzm. Murat YAZICI

PostgreSQL ve PL/pgSQL

Oracle da kullanılan veri tipleri:

SQL TRIGGERS (Tetikleyiciler)

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.

EXISTS VE NOT EXISTS fonksiyonları

Cursor. Bir veri tipi olarak da ele alınabilen Transact-SQL Sunucu Cursor şu aşamalardan geçirilerek kullanılır.

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

KULLANICI TANIMLI FONKSİYONLAR

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

«BM364» Veritabanı Uygulamaları

T-SQL NEDİR? Microsoft T-SQL Transact-SQL

VERİTABANI. SQL (Structured Query Language)

KULLANICI TANIMLI FONKSİYONLAR (Devam)

Güz Yarıyılı MT 487 Bilgisayarda Veri Yapıları Final Çalışma Soruları

15 Aralık 2011 / Perşembe.

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

VERİ TABANI YÖNETİM SİSTEMLERİ II. 3. SQL PROGRAMLAMA BLOKLARI ve AKIŞ DENETİMİ

Fonksiyonlar istenilen deger tipinde dönüs yapabilir. INT, VARCHAR deger döndürebileceğiniz gibi bir tablo da döndürebilirsiniz.

Nesneler üzerinde değişiklik yapmak için kullanılır. Veri tabanındaki nesnelerin oluşturulabilmesi için CREATE komutu kullanılır.

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

KULLANICI TANIMLI FONKSİYONLAR (Devam)

Veri Tabanı SQL Server ve Management Studio kurulum linkleri:

Çok tablolu sorgulamalar

HSancak Nesne Tabanlı Programlama I Ders Notları

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

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

Veritabanı. SQL (Structured Query Language)

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

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

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

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

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

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

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

Sayfa 1 / 8. Tabo yapıları

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

Veri Tabanı Programlamaya Giriş

PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ

Lıke Joker Karakterler, Is [not] Null, Order By, Group By, As

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

1. Araçların tüm bilgilerini ve bağlı oldukları kiralama noktasının adres ve telefonunu içeren tam listesi:

SAKLI YORDAM (Stored Procedure) Sibel Somyürek

ACCESS PLATFORMUNDA SQL

BAYİLERİMİZE ÖZEL. 13 Ağustos İlgili Modül/ler : Genel. İlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL

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

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

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.

YAPISAL SORGULAMA DİLİ (SQL)

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

BÖLÜM -2: VERİLERİ SINIRLAMA VE SIRALAMA

SUNGURLU MESLEK YÜKSEKOKULU 5. T-SQL-2

KAYITLAR BÖLÜM Giriş

5. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.

SQL e Giriş. Uzm. Murat YAZICI

VeriTabanı Uygulamaları

Mysql Veritabanı Komutları

2- Total de 8000 byte yer tutup 4000 karakter olarak kullanabildiğimiz tip aşağıdakilerden hangisidir?

5 Sorgulama İşlemleri. Veritabanı 1

Tetikleyiciler (TRIGGER) Tetikleyiciler ne zaman kullanılırlar. Ardı Sıra Tetikleyiciler (After Triggers) Örnek

Emrah UYSAL 1

TEMEL SQL SORGU ÖRNEKLERİ. Yukarıdaki sorguyu yazıp çalıştırdığımızda db_market adında bir veritabanı oluşturulur.

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

VERİ TABANI ve YÖNETİMİ

VERİ TABANI YÖNETİM SİSTEMLERİ II. 5. SQL PROGRAMLAMADA CURSOR (İMLEÇ) ve TRIGGERS (TETİKLEMELER)

Like Joker Karakterler, Order By, Group By

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

ALGORİTMA VE PROGRAMLAMA II

SQL Deyimleri. Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com

Veri Tabanı ve Yönetimi

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

MT487_2005guz_final_cevaplar (cevaplar vurgulu ve koyu yazılmıştır)

Veri Tabanı-I 9.Hafta

Veritabanına Uygulanması

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

IN ve NOT IN Tablodaki alan içeriklerine ulaşmak için IN deyimi kullanılır.

Veri Tabanı Tasarım ve Yönetimi

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi

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

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

08221 Veri Tabanı II. Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Hafta IV. Öğr. Gör. Murat KEÇECĠOĞLU

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

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:

Veritabanı Tasarımı. Alt Sorgu Temelleri

İnternet Programcılığı Dersi 2.Dönem Ders Notu

3. Hafta Tablo İşlemleri BPR255 Veritabanı Yönetim. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

//bu ifadelerin ikisi de gerçekleşiyorsa havale işlemi gerçekleşmiştir fakat 1 tanesini çalışmazsa havale olmamıştır.

BÖLÜM- 11: BÜYÜK VERİ KÜMELERİ

Transkript:

Öğ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. Değişken tanımlamak için DECLARE deyimi kullanılır. Genel ifade DECLARE @isim veritipi şeklinde tanımlanır.

Değişken Tanımlama DECLARE @ad nvarchar(25), @soyad nvarchar(25), @tarih datetime DECLARE @numara int, @borc Money @numara =10 şeklinde atama yapılamaz, hata verir. Atama aşağıdaki gibi yapılır. SELECT @numara=10 Set @numara=10

Değişken Tanımlama SELECT @ad= ali, @soyad= coşkun, @borc=50 Yukarıdaki kodda @numara değişkenine 10 rakamı, @ad değişkenine ali, @soyad değişkenine coşkun, @borc değişkenine 50 değer atandı.

Değişken Tanımlama SQL server da önceden tanımlı pek çok değişken vardır. Bunlardan iki tanesinden bahsedelim. @@error : sql deyimi hata vermeden çalışırsa değeri sıfır, hata verirse sıfırdan farklı bir değer alır. @@rowcount : Bir update, delete, insert deyimi çalıştığında, kaç tane kayıdın etkilendiğini bize bildirir.

Yazı Yazdırma: Yazı yazdırma PRINT deyimi kullanılır. Örnek: PRINT 'Ali Coşkun' PRINT 5 PRINT 'HATA' PRINT @numara Print @@error

Akış Kontrol Deyimleri CASE IF. ELSE. WHILE.. BREAK CONTINUE

CASE deyimi Case deyimi SELECT, UPDATE, DELETE, SET, IN, WHERE, ORDER BY gibi deyimlerin içinde kullanılır. Sql içinde belirli durumlara göre farklı değerler üretmek istiyorsak CASE deyimi kullanırız. İki farklı yazım şekli vardır. Basit CASE yapısı CASE GirişDenklemi WHEN değer1 THEN sonuç1 WHEN değer2 THEN sonuç2.. ELSE

Örnek DECLARE @sayi INT=5 SELECT CASE @sayi WHEN 1 THEN 'Zayıf' WHEN 2 THEN 'Geçer' WHEN 3 THEN 'Orta' WHEN 4 THEN 'İyi' WHEN 5 THEN 'Pekiyi' ELSE 'Aralık Dışı Değer' END

İkinci CASE yazımı CASE WHEN koşul1 THEN sonuç1 WHEN koşul2 THEN sonuç2. ELSE sonuçn END Örnek : CASE WHEN medenidurum=1 THEN 'bekar' WHEN medenidurum=2 THEN 'evli' ELSE 'Dul' END

Örnek DECLARE @notu INT=500 SELECT CASE WHEN @notu>=0 AND @notu<50 THEN 'Kaldı' WHEN @notu>=50 AND @notu<=100 THEN 'Geçti' ELSE 'Aralık Dışı Not değeri' END

Tablo : Personel SicilNo Departman Ad Soyad Maas 2053 10 İbrahim Öz 700 68054 10 Hakan Bülbül 850 0415 12 Ahmet Uzun 1200 0524 10 Halil Doğru 1500 0211 12 Özkan Zorlu 900 3159 12 Ali Şimşek 2500 2543 5 Neşe Şen 1300 2546 5 Alper Şener 1200

Örnek SELECT *, CASE WHEN maas<1000 THEN 'maaş Az' WHEN maas>1200 then 'maaş çok' ELSE 'Maaş Normal' END AS MaasDurumu, CASE Departman WHEN 10 THEN 'PAZARLAMA' WHEN 12 THEN 'ÜRETİM' WHEN 5 THEN 'İHRACAT' END as DepartmanAdi, CASE Departman WHEN 10 THEN maas*1.3 WHEN 12 THEN maas*1.1 else maas

Ödev ÖğrenciNot tablosundaki her bir öğrencinin öğrenci Numarasını, adını, soyadını,ders adını ve 100 lük notuna göre harf notunu döndüren sorguyu yazınız. (100 lük notu harf notuna dönüştürürken case yapısı kullanınız.)

IF ELSE deyimi IF koşul Sql deyimi Koşul doğru ise devamındaki sql deyimi çalışır. Yanlış ise çalışmaz. IF koşul ELSE Sql deyimi (1) Sql deyimi (2) Koşul doğru ise 1. sql deyimi, yanlış ise 2. sql deyimi çalışır. Eğer sql deyimi bir den fazla satır dan oluşursa BEGIN. END arasında yazılır.

Örnek Personel tablosunda Ortalama maaş 1000 çok ise maaş ortalaması yüksek, az ise maaş ortalaması düşük yazsın IF (select avg(maas) from personel) > 1000 PRINT 'Maaş ortalaması yüksek' ELSE PRINT 'Maaş ortalaması düşük'

Örnek 2053 sicil nolu personelin maaşı Düşük ise az maaş yazsın IF (select maas from personel where sicilno=2053) > (select avg(maas) from personel) PRINT 'çok maaş' ELSE PRINT 'az maaş'

Örnek IF((SELECT COUNT(1)FROM tbl_ogrencinot on1 WHERE on1.notu IS NULL)>0) DELETE FROM tbl_ogrencinot WHERE notu IS NULL ELSE SELECT * FROM tbl_ogrencinot on1

WHILE döngüsü While yapısı bir sql deyiminin tekrarlanmasını sağlar. Koşul yanlış oluncaya kadar döngü çalışır. BREAK : döngüden koşul sağlanmadan yani erken çıkılmasını sağlar. CONTINUE : devamındaki satırlar işlenmeden döngünün ilk satırına dönülmesini sağlar.

Genel ifade Veya Veya WHILE koşul Sql deyimi WHILE koşul BEGIN Sql deyimleri END WHILE koşul BEGIN Sql deyimi Koşula bağlı BREAK deyimi Sql deyimi Koşula bağlı CONTINUE deyimi Sql deyimi END

Örnek: 1 den 12 ye kadar sayıları yazdıralım. DECLARE @sayi int SELECT @sayi=1 WHILE @sayi<=12 BEGIN PRINT @sayi SELECT @sayi = @sayi + 1 END

Örnek : Önceki örnek gibi, 1 den 30 kadar döngüyü çalıştıralım. 1 den 24 e kadar yazdıralım. 25 olunca döngüden çıkalım. DECLARE @sayi int SELECT @sayi =1 WHILE @sayi <=30 BEGIN PRINT @sayi IF @sayi = 24 BREAK SELECT @sayi=@sayi+1 END

Örnek : 1 den 30 a kadar yazdıralım. Ancak 15-20 arası yazılmasın. DECLARE @sayi int SELECT @sayi=0 WHILE @sayi < 30 BEGIN SELECT @sayi=@sayi+1 IF @sayi between 15 and 20 continue PRINT @sayi END