16 Ocak 2017 Pazartesi
WHILE Döngüsü
Döngüler bir işlemde tekrar gerektiren durumlarda kullanılmaktadır. Döngüler belirlenen şart sağlanıncaya kadar işlemin yapılmasını sağlamaktadır. Diğer dillerde olduğu gibi T-SQL içerisinde de tekrarlı işlemler için bir döngü mevcuttur.
Bu döngünün genel yapısı aşağıdaki gibidir.
WHILE Şart
BEGIN
Tekrar gerektiren kodlar
………
END
Örnek1: Basit bir döngü yazarak 10’a kadar sayı saydıralım.
Yazılım Sektörü İçin Özelleştirilmiş İş Arama Platformu
Yazılım, donanım, ağ ve internet teknolojilerindeki son gelişmeler, Türkiye ve Avrupa’da bilişim alanında binlerce yeni firmanın doğmasına neden olmuştur. ABD İşgücü İstatistik Dairesi’ne göre 2012 ile 2022 arasında bu alanlarda yüzde 22,8’lik bir büyüme olması beklemektedir. Bu büyüme ile Türkiye’de ve Avrupa’da istihdam açıkları oluşacaktır. Buna paralel olarak üniversitelerdeki bilgisayar bilimleri, bilgisayar /yazılım mühendisliği ve bilgisayar programcılığı gibi programların hem sayıları artacak hem de müfredatları yeni ihtiyaçlara göre revize edilecektir. Türkiye’de her ne kadar Bologna Süreci kapsamında eğitimde standardizasyona gidilmeye çalışılsa da her üniversitede verilen eğitim farklılık gösterebilmekte ve mezun olan öğrenciler farklı bilgi ve beceri edinmektedirler.
Öğrenciler eksik olan ya da yeterli olmayan durumlarda kolay, hızlı ve istediği an eğitim alabilecek kurslara ihtiyaç duymaktadır. Özellikle büyük şehirlerde veya şehir merkezinde yaşamayan öğrencilerin ihtiyaç duydukları eğitime ulaşma imkânları son derece zor ve maliyetlidir. Teknolojinin hızla geliştiği çağımızda ve yaşam boyu Öğrenme kavramı kapsamında oluşturulacak bu platform sayesinde, gerekli bilgiler çevrimiçi ortamda paylaşılacak ve böylece daha fazla bireye ulaşma imkânı elde edilecektir.
Projenin amacı temel olarak üniversitelerin bilişim bölümünden mezun ve mezun adayları ile işverenleri bir araya getirmektir. İşverenlerin ilan verebileceği, iş arayan yazılımcıların kendine özgü yeteneklerini temel alarak iş arayabilecekleri, işverenlerin talep ettiği niteliklere uygun olmayan adayların kendini geliştirebileceği ve uzaktan eğitim alarak sınava girebileceği ve sertifika edinebileceği, özgün aday eşleştirme algoritmalarına sahip bir platform oluşturmaktır.
Hazırlayanlar: Yalçın ŞAHİN, Furkan KOLCU
Görme Engelliler için Sesli Haber Okuma Sistemi
Görme engelli insanların, günlük
hayatlarında çalışma imkânlarından ve sosyal haklardan yararlanabilmesi için
haber sitelerine kolay bir şekilde erişmeye ihtiyaçları vardır. Şu anki durumda
ülkemizde yaşayan görme engellilerin kullanabileceği yurt dışında geliştirilmiş
farklı özelliklere sahip çeşitli yazılımlar bulunmaktadır. Yeni gelişen mobil
teknolojinin imkanları sayesinde geliştirilen yazılım ile görme engelli insanların ulusal haber web
sitelerine kolay ve hızlı bir arayüz ile girip istedikleri metin haberlerini
rahat ve kolayca dinleyebilecekleri metni ses çeviren sesli oku isimli bir
yazılım geliştirilmiştir. Böyle bir uygulama ile görme engelli insanların;
sesli okumalar yardımıyla haber sitelerindeki bilgilere rahatca erişebilmeleri
sağlanmıştır. Bu çalışmada ayrıca bilişim teknolojilerinin görme engelli
insanlar için kullanılabilirliği sorgulanmıştır. Alan taraması yapılarak bu
konudaki ulusal ve uluslararası çalışmalar incelenip geliştirilen yazılım ile birlikte
anlatılarak önerilerde bulunulmuştur.
Proje Başarısı: BAP (Bilimsel Araştırma Projeleri) başvursu, 1 adet uluslararası bildiri kabülü.
Hazırlayanlar: Selçuk AKŞAR, Abdulmelik KALKAN
AKBS (Acil Konum Bildiri Sistemi)

Proje Başarısı: 2016 yılı Tübitak Lisans Bitirme Yarışması Finalistti , 1 Adet Uluşlararası Bildiri Başvuru Kabülü.
Hazırlayanlar: Oğuzhan YILMAZ, Serhat ÖZKAHYA, Emrah ÖZBAYSAR
Otopark Bul

Otopark Bul uygulaması ile araç sahipleri çevrelerindeki otoparkların konumlarını, boş – dolu oranını , fiyatlandırmalarını, seyir edecekleri yoldaki trafik durumlarını, otoparklar ile ilgili diğer kullanıcıların yorumlarını görebilecek, daha şeffaf bilgiler ile park yeri seçebilme imkanı bulabileceklerdir.. Otopark Bul uygulama tasarımı , kullanıcıların seyahat halinde iken rahat kullanımını gözeterek ‘Tek El ile Kullanım’ trendine ayak uydurmuştur. Uygulama kompleks bir yapıdan ayrılmıştır , temel seviye erişimleri ile kullanılabilirlik esaslarına dayandırılmıştır. Otopark Bul uygulaması, ana amacı dışında trafik sorununa çözüm üretebilmeyi hedefleyen ve bu konuda başarı sağlamayı öngören bir uygulama olma yolunda ilerlemektedir.
Peki böyle bir uygulamaya otoparklar nasıl ekleniyor? Otopark Bul uygulaması web sitesi üzerinden yalnızca otopark sahipleri ile sisteme otopark eklenebilir. Böylece dünyanın her bölgesinde aktif olarak gelişebilen bir uygulama olabilmesi hedeflenmiştir. Ayrıca otoparkların spesifik özellikleri doğru bir şekilde kullanıcılara lanse edilir.
Otopark Bul uygulaması, ilerleyen süreçte yalnızca otomobiller için değil; bisiklet parkları, motosiklet parkları, oto yıkamalar, araç servisleri gibi geniş bir yelpazede kullanıcı memnuniyeti gözetilerek geliştirilecektir.
OTOPARK BUL UYGULAMA GÖRÜNTÜLERİ ( UYGULAMA DA KULLANILAN VERİLER TEST VERİLERİNDEN OLUŞMAKTADIR. HERHANGİ BİR GERÇEK VERİ BARINDIRILMAMAKTADIR. )
Hazırlayanlar: Kubilay Tural, Görkem İşler
ANDROİD TABANLI SAĞLIK UYGULAMASI

Projeyi Hazırlayanlar: Sema BAYRİ, Tuğba ÇIRDAKLI
DELETE
Kayıt Silme
Bir tabloda bulunan bir yada daha fazla satır silinebilmektedir. Silme işlemi için DELETE deyimi kullanılmaktadır. Bu deyimin genel yapısı şu şekildedir.
DELETE FROM tablo_adı
WHERE koşul
Bir tabloda bütün kayıtlar silinebileceği gibi belli bir şartı sağlayan herhangi bir kayıtta silinebilmektedir. Örneğin daha önce oluşturduğumuz «secilenmüsteri» tablosunun tüm kayıtlarını silmek için şöyle bir SQL ifadesi yazılacaktır.
DELETE FROM secilenMüsteri
Herhangi bir koşul olmadığı için bütün kayıtlar silinecektir.
Şimdi de belli bir şarta sahip kayıtları silmek için bir örnek verelim. Müşteriler tablosunda “Ali Arslan” isimli müşteri ile artık çalışmadığımızı düşünerek bu müşteriyi tamamen silelim. SQL ifademiz şöyle olacaktır.
DELETE FROM musteriler
WHERE (adi='Ali' AND soyadi='Arslan')
Aynı şekilde bir tabloda istenilen şartı sağlayan birden fazla kayıtta silinebilmektedir. Örneğin Müşteriler tablosunda Ankara ‘da oturan bütün müşterileri silmek istersek SQL ifademiz aşağıdaki gibi olacaktır.
DELETE FROM musteriler
WHERE il ='Ankara'
DELETE komutunda da tıpkı INSERT INTO ve UPDATE komutlarında olduğu gibi alt sorgular kullanılarak da kayıtlar silinebilmektedir. Bu noktada yine SELECT ifadesinden yararlanılmaktadır.
Örneğin; personel tablosunda İMALAT bölümüne ait bütün kayıtları silmek istiyoruz. Bu işlemi gerçekleştiren SQL ifadesi şöyle olacaktır:
DELETE FROM personel
WHERE bolumID = (SELECT bolumID
FROM bolum
WHERE bolumAdi = 'İMALAT')
Bir tabloda bulunan bir yada daha fazla satır silinebilmektedir. Silme işlemi için DELETE deyimi kullanılmaktadır. Bu deyimin genel yapısı şu şekildedir.
DELETE FROM tablo_adı
WHERE koşul
Bir tabloda bütün kayıtlar silinebileceği gibi belli bir şartı sağlayan herhangi bir kayıtta silinebilmektedir. Örneğin daha önce oluşturduğumuz «secilenmüsteri» tablosunun tüm kayıtlarını silmek için şöyle bir SQL ifadesi yazılacaktır.
DELETE FROM secilenMüsteri
Herhangi bir koşul olmadığı için bütün kayıtlar silinecektir.
Şimdi de belli bir şarta sahip kayıtları silmek için bir örnek verelim. Müşteriler tablosunda “Ali Arslan” isimli müşteri ile artık çalışmadığımızı düşünerek bu müşteriyi tamamen silelim. SQL ifademiz şöyle olacaktır.
DELETE FROM musteriler
WHERE (adi='Ali' AND soyadi='Arslan')
Aynı şekilde bir tabloda istenilen şartı sağlayan birden fazla kayıtta silinebilmektedir. Örneğin Müşteriler tablosunda Ankara ‘da oturan bütün müşterileri silmek istersek SQL ifademiz aşağıdaki gibi olacaktır.
DELETE FROM musteriler
WHERE il ='Ankara'
DELETE komutunda da tıpkı INSERT INTO ve UPDATE komutlarında olduğu gibi alt sorgular kullanılarak da kayıtlar silinebilmektedir. Bu noktada yine SELECT ifadesinden yararlanılmaktadır.
Örneğin; personel tablosunda İMALAT bölümüne ait bütün kayıtları silmek istiyoruz. Bu işlemi gerçekleştiren SQL ifadesi şöyle olacaktır:
DELETE FROM personel
WHERE bolumID = (SELECT bolumID
FROM bolum
WHERE bolumAdi = 'İMALAT')
UPDATE
Kayıt Güncelleme
Bir tabloya eklenen bilgiler gerektiğinde değiştirilebilmelidir. Bu amaçla UPDATE komutu kullanılmaktadır. UPDATE komutunun genel kullanıl biçimi şöyledir.
UPDATE tablo_adı
SET sütun1=değer1, sütun2=değer2, …
[WHERE koşul]
Bu tanımda kullanılan WHERE deyimi değişikliğin hangi kayıt üzerinde yapılacağının bulunmasına yardımcı olmaktadır. Bu tanım yapılmadığında söz konusu tablonun tüm satırlarında değişiklikler meydana gelecektir.
Bahçe işleri veritabanında müşteriler tablosunda isim bilgisi “Ali Arslan” olan kişinin Ankara’dan İstanbul Üsküdar’a iş yerini taşıdığını düşünerek gerekli değişiklikleri yapmak için aşağıdaki SQL sorgusunu yazmak gerekir.
UPDATE musteriler
SET il='İstanbul', ilce = 'Üsküdar'
WHERE (adi='Ali' AND soyadi='Arslan')
UPDATE komutu ile matematiksel işlemler de gerçekleştirilebilmektedir. Tüm personelin ücretine %20 zam yapılacağını düşünerek tablo üzerinde değişiklikleri gerçekleştiren SQL ifadesi aşağıdaki gibi olacaktır.
UPDATE personel SET ucret = ucret*1.20
Bu komut çalıştırıldığında bütün kayıtlar bu değişiklikten etkilenecektir. Çünkü herhangi bir koşula bağlı bir işlem gerçekleştirilmemiştir.
UPDATE işlemi tıpkı INSERT INTO deyiminde olduğu gibi alt sorgularla da çalışabilmektedir. Yani bilgi güncelleştirme işlemi bir tablodan okunan bilgilerin güncellenerek başka bir tabloya eklenmesi ile de gerçekleşebilmektedir.
Yine burada alt sorgular yazılırken SELECT deyiminden faydalanılmaktadır.
UPDATE komutunda alt sorgulara şöyle bir örnek verebiliriz. BolumID’si 200 olan personel ile aynı göreve sahip tüm personelin bolumID’sini 100 olarak değiştirmek istersek şöyle bir SQL ifadesi yazabiliriz.
UPDATE personel SET bolumID = 100
WHERE gorevi = (SELECT gorevi
FROM personel
WHERE bolumID=200)
UPDATE personel SET bolumID = 100
WHERE gorevi = (SELECT gorevi
FROM personel
WHERE bolumID=200)
Bu sorguda öncelikle alt sorguda bolumID’si 200 olan personelin görevinin ne olduğu tespit edilmektedir. Daha sonra tespit edilen bu görevle aynı görevi icra eden personel kayıtlarında bolumID’leri 100 olarak değiştirilmektedir.
INSERT INTO
Tabloya Kayıt Ekleme
Bir tabloya kayıt eklemek için INSERT INTO deyimi kullanılmaktadır. Bazı durumlarda SQL ifadeleri kullanarak bir tabloya kayıt eklemek durumunda kalabilirsiniz. Bu gibi durumlarda bu deyimi kullanmak yerinde olacaktır. Bu deyimin genel kullanım biçimi şöyledir.
INSERT INTO tablo_adı (sütunlar) VALUES (değerler)
Burada, tablo_adı; verilerin kaydedileceği tablonun adıdır.
Sütunlar, tablo içinde verilerin kaydedileceği alanlardır.
Değerler ise tabloya kaydedilecek olan verileri göstermektedir.
Bu SQL deyimi her çalıştırıldığında tabloya yeni bir kayıt eklenecektir.
Örnek için yine bahçe işleri veritabanında "kategoriler" tablosuna çeşitli kayıtlar ekleyelim. Bunun için SQL ifademiz şöyle olacaktır:
INSERT INTO kategoriler (kategoriID, kategoriAdi)
VALUES (5, 'Bahçe Çiçekleri')
INSERT INTO kategoriler (kategoriID, kategoriAdi)
VALUES (5, 'Bahçe Çiçekleri')
Sorgusunda eğer tablodaki bütün alanlara kayıt yapılacaksa sütun adlarını kullanmadan da kayıt ekleme işlemi yapılabilmektedir.
INSERT INTO kategoriler
VALUES (5, 'Bahçe Çiçekleri')
INSERT INTO deyimi ile çeşitli fonksiyonları da kullanmak mümkündür. Bir tarih bilgisi eklenmek istenildiğinde bunu doğrudan elle değil de bir fonksiyon aracılığı ile gerçekleştirebilirsiniz.
Örneğin, “siparisler” tablosunu göz önüne alalım. Bir sipariş verildiğinde bu siparişin verilme tarihini sistemden alarak tabloya kaydedelim.
INSERT INTO siparisler (siparisID, müsteriID, calısanID, siparisTarihi) VALUES (16, 7, 4, GETDATE())
Dikkat edilecek olursa sipariş tarihi bilgisi eklenmek istenildiğinde bu tarih bilgisi GETDATE ( ) fonksiyonu kullanılarak sistemden otomatik olarak alınmaktadır.
Alınan bu sistem bilgisi, siparisTarihi niteliğinin giriş değeri olmaktadır. Sorgu çalıştırıldığında ilgili kaydın eklendiği görülür.
INSERT INTO deyimi ile bir tabloya başka bir tablodan belirlenen bir satır bilgi eklenebilmektedir. Yani INSERT INTO deyimi ile birlikte alt sorgularda kullanılabilmektedir.
Alt sorgulama işlemleri için SELECT ifadesi kullanılmaktadır. Böyle bir alt sorgulama kullanılacağı zaman VALUES sözcüğü kullanılmaz.
Soru: Müşteriler tablosunda ilçesi ‘Çankaya’ olan müşterilerin musteriID, adi ve soyadi bilgilerini «secilenMüsteri» tablosuna kaydeden SQL ifadesi nedir?
Soruya dikkat edilirse soru iki bölümden oluşmaktadır. İlçesi Çankaya olanlar bulunacak ve ikinci olarak «secilenMusteri» tablosuna kayıt edilecek. Bu işlemler için SQL ifademiz şöyle olacaktır:
INSERT INTO secilenMusteri (musteriID, adi, soyadi)
SELECT musteriID, adi, soyadi
FROM musteriler
WHERE ilce ='Çankaya'
Bir tabloya kayıt eklemek için INSERT INTO deyimi kullanılmaktadır. Bazı durumlarda SQL ifadeleri kullanarak bir tabloya kayıt eklemek durumunda kalabilirsiniz. Bu gibi durumlarda bu deyimi kullanmak yerinde olacaktır. Bu deyimin genel kullanım biçimi şöyledir.
INSERT INTO tablo_adı (sütunlar) VALUES (değerler)
Burada, tablo_adı; verilerin kaydedileceği tablonun adıdır.
Sütunlar, tablo içinde verilerin kaydedileceği alanlardır.
Değerler ise tabloya kaydedilecek olan verileri göstermektedir.
Bu SQL deyimi her çalıştırıldığında tabloya yeni bir kayıt eklenecektir.
Örnek için yine bahçe işleri veritabanında "kategoriler" tablosuna çeşitli kayıtlar ekleyelim. Bunun için SQL ifademiz şöyle olacaktır:
INSERT INTO kategoriler (kategoriID, kategoriAdi)
VALUES (5, 'Bahçe Çiçekleri')
INSERT INTO kategoriler (kategoriID, kategoriAdi)
VALUES (5, 'Bahçe Çiçekleri')
Sorgusunda eğer tablodaki bütün alanlara kayıt yapılacaksa sütun adlarını kullanmadan da kayıt ekleme işlemi yapılabilmektedir.
INSERT INTO kategoriler
VALUES (5, 'Bahçe Çiçekleri')
INSERT INTO deyimi ile çeşitli fonksiyonları da kullanmak mümkündür. Bir tarih bilgisi eklenmek istenildiğinde bunu doğrudan elle değil de bir fonksiyon aracılığı ile gerçekleştirebilirsiniz.
Örneğin, “siparisler” tablosunu göz önüne alalım. Bir sipariş verildiğinde bu siparişin verilme tarihini sistemden alarak tabloya kaydedelim.
INSERT INTO siparisler (siparisID, müsteriID, calısanID, siparisTarihi) VALUES (16, 7, 4, GETDATE())
Dikkat edilecek olursa sipariş tarihi bilgisi eklenmek istenildiğinde bu tarih bilgisi GETDATE ( ) fonksiyonu kullanılarak sistemden otomatik olarak alınmaktadır.
Alınan bu sistem bilgisi, siparisTarihi niteliğinin giriş değeri olmaktadır. Sorgu çalıştırıldığında ilgili kaydın eklendiği görülür.
INSERT INTO deyimi ile bir tabloya başka bir tablodan belirlenen bir satır bilgi eklenebilmektedir. Yani INSERT INTO deyimi ile birlikte alt sorgularda kullanılabilmektedir.
Alt sorgulama işlemleri için SELECT ifadesi kullanılmaktadır. Böyle bir alt sorgulama kullanılacağı zaman VALUES sözcüğü kullanılmaz.
Soru: Müşteriler tablosunda ilçesi ‘Çankaya’ olan müşterilerin musteriID, adi ve soyadi bilgilerini «secilenMüsteri» tablosuna kaydeden SQL ifadesi nedir?
Soruya dikkat edilirse soru iki bölümden oluşmaktadır. İlçesi Çankaya olanlar bulunacak ve ikinci olarak «secilenMusteri» tablosuna kayıt edilecek. Bu işlemler için SQL ifademiz şöyle olacaktır:
INSERT INTO secilenMusteri (musteriID, adi, soyadi)
SELECT musteriID, adi, soyadi
FROM musteriler
WHERE ilce ='Çankaya'
Kaydol:
Kayıtlar (Atom)