III.Oturum: SQL ile Verileri İşlemek Query Analyzer ve osql Veri Tanımlama Dili Veri İşleme Dili Veri Kontrol Dili Tabloları Birlikte Sorgulamak Verileri Gruplamak
Query Analyzer ve osql Query Analyzer: Yegane Kod yazma alanı Osql(odbc sql client): MSDOS ortamında T-SQL ifadeleri çalıştırılmasına olanak tanıyan bir tool DEMO
Veri Tanımlama Dili(DDL) Verinin kılıfı ile ilgili tanımlamaların yapıldığı SQL alt dili 3 Temel ifade var: CREATE ALTER DROP Enterprise Manager ile yönetmek daha kolay
Veri İşleme Dili(DML) Verilerin saklandığı ortama karışamayan, sadece verilere erişebilen, bir grup SQL ifadesi SELECT:Veri Raporlama ve Seçme UPDATE: Veri Güncelleme INSERT: Veri Ekleme DELETE: Veri Silme
Veri Konrol Dili(DCL) Verilere ve saklandıkları ortama ait işlemleri yapabilecek yetkileri tanımlar GRANT:Yetki Ver DENY: Erişimini Engelle REVOKE: Yetki veya Engellemeyi Kaldır sp_helprotect ‘nesneadı’ ile nesneye ait haklar-kısıtlamalar
Tabloları Birlikte Sorgulamak Normalizasyon kuralları ile parçalanan tablolardan bir tek rapor elde etmek gerektiğinde JOIN kullanılır En fazla 16 tablo bir defada JOIN edilebilir Klasik Join(WHERE Şartı ile), INNER JOIN il aynı işlev INNER JOIN: Birleştirmeye katılan sütunlardaki veriler her iki tabloda da yer alan kayıtlar birleştirilerek gösterilir. Diğer kayıtlar gösterilmez. OUTER JOIN: Üç Çeşittir: LEFT OUTER JOIN: İlk tablodaki bütün kayıtlar, ikinci tablodaki kayıtlardan sadece uyuşanlar RIGHT OUTER JOIN: İlk tabloda yer alan kayıtlardan sadece uyuşanlar, ikinci tabloda yer alan kayıtların tamamı FULL OUTER JOIN: Her iki tabloda da uyuşan kayıtlar yan yana, uyuşmayan kayıtlar için ilgili tablo karşılığı NULL olarak WHERE olmadan birden fazla Tabloyu birleştirmek ile CROSS JOIN aynı işleve sahiptir. İki tablonun kartezyen çarpımını elde eder.
DEMO INNER JOIN OUTER JOIN CROSS JOIN (LEFT JOIN-RIGHT JOIN-FULL JOIN) tblModel Tablosu(ModelKod,marka,model) tblRenk tablosu(renkKod,renk) Toplam kaç farklı model ve renkte araba olma ihtimali var?
Gruplama Yapmak SELECT gruplananSutun, AGGFUNC(Sutun) FROM tablo WHERE şart GROUP BY sütunadı HAVING AGGFUNC(Sütun) şart DEĞER COUNT(sütun), COUNT(*) SUM(sütun) AVG() MIN(),MAX()
Neler Öğrendik? SQL nedir? Hangi işlemler için kullanılır?Hangi ifadelerden oluşur? Verileri çekmek için hangi yöntemler kullanılır? Tablolara parçalanmış veriler nasıl birleştirilerek gösterilebilir? Verileri gruplara bölerek nasıl istatistik alınır
Oturum Sonu Sorusu Bir Update işleminden en fazla kaç tablo etkilenebilir?(Şıklardan sadece biri doğrudur) A)1 B)16 C)FROM’da kaç tablo adı geçerse tamamı D)Sınırsız
Bir Sonraki Oturum Transact SQL ‘SQL Server’in Programlama Dili’
©2003-2004 Tüm hakları mutasyon.net & verivizyon.com’a aittir. Bu slayt bilgilendirme amaçlı olarak mutasyon.net & verivizyon.com tarafından hazırlanmıştır. İçerdiği teknik ipuçlarının uygulanması ile doğacak her türlü sorundan mutasyon.net & verivizyon.com sorumlu değildir. İçerik sahipleri, haber vermeksizin bu sunumun içeriğini deiştirme hakkını saklı tutar . SQL Server 2000, Microsoft’un tescilli markasıdır.