Ders AdıKodu Yerel KrediAKTS Ders (saat/hafta)Uygulama (saat/hafta)Laboratuar (saat/hafta)
Veri TabanıIST214235300
ÖnkoşullarYok
YarıyılBahar
Dersin Diliİngilizce, Türkçe
Dersin SeviyesiLisans
Dersin TürüZorunlu @ İstatistik Lisans Programı (%30 İngilizce)
Ders KategorisiTemel Meslek Dersleri
Dersin Veriliş ŞekliYüz yüze
Dersi Sunan Akademik Birimİstatistik Bölümü
Dersin KoordinatörüTugay Karadağ
Dersi Veren(ler)Tugay Karadağ
Asistan(lar)ı
Dersin AmacıBu dersin amacı, öğrencilerin veri tabanının ne olduğunu ve hangi amaçlarla kullanıldığını öğrenmesine, varlık-ilişki modellerini kavramalarına, kendi veri tabanlarını tasarlayabilmelerine ve SQL dilini kullanarak veri tabanı üzerinde sorgulama yapabilmelerine yardımcı olmaktır.
Dersin İçeriğiVeri Tabanına giriş; Veri tabanı tasarımı ve modellenmesi; Varlık İlişki Diyagramı; Fonksiyonel Bağımlılık; Normalizasyon; Birincil Anahtar ve Yabancı Anahtar; SQL ile Veri Tabanı Oluşturma; SQL de kısıt belirleme; SQL de Temel Sorgu Yazımı: SELECT, WHERE, ORDER BY; SQL de birden fazla tablo birleştirme JOIN Türleri; SQL de Nümerik, Karakter ve Tarih Değişkenlerinde Kullanılan Fonksiyonlar; SQL de Verilerin Özetlenmesi; GROUP BY, ROLLUP, HAVING; Alt sorgular ve Ortak Tablo İfadeleri
Ders Kitabı / Malzemesi / Önerilen Kaynaklar
  • Elmasri, Ramez, and Sham Navathe. Fundamentals of database systems. Vol. 7. Pearson, 2014.
  • Josephine, Bush. Learn SQL Database Programming Query and manipulate databases from popular relational database servers using SQL. Packt Publishing 2020.
  • Renee, M Teate. SQL for Data Scientists A Beginner's Guide for Building Datasets for Analysis. Wiley, 2021.
  • Viescas, J. L., Hernandez, M. J. SQL Queries for Mere Mortals: a hands-on guide to data manipulation in SQL. Pearson Education, 2014.
  • https://www.w3schools.com/sql/
Opsiyonel Program BileşenleriYok

Ders Öğrenim Çıktıları

  1. Veri tabanı tanımlayarak kullanım amacını açıklayabileceklerdir.
  2. Kendi veri tabanlarını teoride ve pratikte tasarlayabileceklerdir.
  3. SQL dilini temel seviyede öğrenebileceklerdir.
  4. SQL dilinde sorgu yazarak veri tabanlarından istenen bilgiyi çekebileceklerdir.
  5. SQL dilini kullanarak farklı tabloları birleştirebileceklerdir.
  6. Veri tabanlarından istenilen özet bilgileri çekebileceklerdir.

Ders Öğrenim Çıktısı & Program Çıktısı Matrisi

DÖÇ-1DÖÇ-2DÖÇ-3DÖÇ-4DÖÇ-5DÖÇ-6
PÇ-1------
PÇ-2------
PÇ-3------
PÇ-4------
PÇ-5555555
PÇ-6555555
PÇ-7555555
PÇ-8------
PÇ-9------
PÇ-10------
PÇ-11------

Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları

HaftaKonularÖn Hazırlık
1Konu Anlatımı: Veri Tabanı Türleri, Veri tabanı Örneği, Veri tabanlarının Avantajları, Veri Modelleri, Üç Şema Mimarisi, Veri Bağımsızlığı Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Veri Tabanlarının ne amaçla kullanıldığının araştırılması 2. Veri Tabanın Yönetim Sistemlerinin araştırılması 3. Veri Tabanı kullanmanın avantajlarının araştırılması 4. Bir Veri Tabanını Oluşturan Bileşenlerin Araştırılması • Fundamentals of Database Systems Chapter 1-2 sayfa 3-58 • Ders Notları.
2Konu Anlatımı: Varlık-İlişki (ER) Modelini Kullanarak Veri Modelleme Sınıf-içi Uygulama (60 dk.): Varlık-İlişki Modeli Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Veri tabanı tasarım sürecinde Kullanılan Kavramların Araştırılması 2. Varlık İlişki Modellerinde kullanılan temel gösterimlerin ve kavramların öğrenilmesi 3. Varlık İlişki Modellerinin Grafiksel Gösteriminin Araştırılması • Fundamentals of Database Systems Chapter 3 sayfa 59-106 • Ders Notları
3Konu Anlatımı: İlişkisel Veri Modeli ve İlişkisel Veri tabanı Kısıtlamaları Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. İlişkisel Veri Tabanı Modellerinde kullanılan temel kavramların araştırılması 2. İlişkisel Veri Tabanı Modellerinde farklı tür kısıtların araştırılması 3. İlişkisel Veri Tabanı Tasarımlarında uygulanan tasarım kurallarının araştırılması • Fundamentals of Database Systems Chapter 3 sayfa 59-106 • Ders Notları
4Konu Anlatımı: Fonksiyonel Bağımlılık ve Normalizasyon Sınıf-içi Uygulama (60 dk.): Fonksiyonel Bağımlılık ve Normalizasyon Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Fonksiyonel Bağımlılığın ne olduğunun araştırılması 2. Veri Tabanında normal formların araştırılması • Fundamentals of Database Systems Chapter 14 sayfa 459-502 • Learn SQL Database Programming Chapter 1 sayfa 9-33 • Ders Notları
5Konu Anlatımı: SQL de Veri Türleri, SQL de Veri Tabanı Oluşturma ve Tasarlama, SQL Veriyi İçeri ve Dışarı Aktarma Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Öğrencilerin MySQL Workbench'i Kendi bilgisayarlarına Kurabilmesi 2. Öğrencilerin MSQL de kullanılan Temel Veri Türlerini Anlaması 3. Öğrencilerin MYSQL e dışarıdan veri alabilmesi ve dışarıya veri aktarabilmesi • Learn SQL Database Programming Chapters 2-5 sayfa 34-168 • Ders Notları
6Konu Anlatımı: Temel SQL: Tekli ve Çoklu Tablolarda Sorgu Yazmak Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. SQL sorguları kullanılarak tek bir tablodan bilgi çıkarımı yapılması 2. SELECT, FROM, WHERE ve ORDER BY komutlarının ne için kullanıldığının anlaşılması 3. SQL sorguları kullanılarak birden fazla tablonun bir araya getirilmesi 4. JOIN komutunun anlaşılması ve farklı JOIN komutları arasındaki farkın araştırılması
7Sınıf-içi Uygulama (150 dk.): Temel SQL: Tekli ve Çoklu Tablolarda Sorgu Yazmak Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Tekli ve çoklu tablolarda bir veri tabanı üzerinde SQL sorgularıyla bilgi çıkarımının örnek bir uygulama üzerinden yapılması • Learn SQL Database Programming Chapter 6-7 sayfa 169-251 • Ders Notları
8Ara Sınav 1
9Konu Anlatımı: Verileri ve Tablo Yapılarını Değiştirme Sınıf-içi Uygulama (60 dk.): Verileri ve Tablo Yapılarını Değiştirme Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Veri tabanlarına MYSQL yardımıyla veri eklenmesi, veri silinmesi ve veri güncellenmesi işlemlerinin araştırılması 2. TRANSACTION, COMMIT ve ROLLUP komutlarının ne işe yaradığının araştırılması 3. Veri tabanlarına MYSQL yardımıyla yeni bir tabloya sütun eklenmesini, var olan bir sütunun silinmesini ya da yeniden adlandırılmasını sağlayan komutların araştırılmasını 4. Veri tabanındaki değişkenlere MYSQL yardımıyla kısıt ekleme, kısıt kaldırma ve kısıt değiştirme işlemlerinin nasıl yapıldığının araştırılması • Learn SQL Database Programming Chapter 8 sayfa 252-285 • Ders Notları
10Konu Anlatımı: İfadelerle Çalışma Sınıf-içi Uygulama (60 dk.): İfadelerle Çalışma Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. SQL de literallerin ne olduğunun araştırılması 2. SQL de karşılaştırma, mantıksal ve matematiksel operatörlerin nasıl kullanıldığının araştırılması 3. SQL de var olan karakter, sayısal ve tarih fonksiyonlarının araştırılması 4. İstatistiksel fonksiyonların nasıl kullanılacağının araştırılması • Learn SQL Database Programming Chapter 9 sayfa 287-315 • Ders Notları
11Konu Anlatımı: Verileri Gruplama ve Özetleme Sınıf-içi Uygulama (60 dk.): Verileri Gruplama ve Özetleme Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Sayısal ve istatistiksel sınıflama fonksiyonlarının araştırılması 2. GROUP BY ve HAVING komutlarının arasındaki farkın araştırılması 3. SQL sorgusundaki komut sırasının araştırılması • Learn SQL Database Programming Chapter 10 sayfa 317-332 • Ders Notları
12Ara Sınav 2Sınav haftasına kadar işlenen konuların tümünün tekrar edilmesi
13Konu Anlatımı: SQL de İleri Sorgu Yöntemleri: Alt sorgular ve Ortak Tablo İfadeleri Sınıf-içi Uygulama (30 dk.): Alt sorgular ve Ortak Tablo İfadeleri Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma. Konu Anlatımı: Programlanabilir Nesneler Sınıf-içi Uygulama (30 dk.): Programlanabilir Nesneler Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.• Alt sorguların ne olduğu ve ne zaman kullanıldığının araştırılması • Ortak Tablo İfadelerinin ne olduğu ve ne zaman kullanıldığının araştırılması • MYSQL de VIEW oluşturma, kullanma, düzenleme ve silme • MYSQL de değişken oluşturma • MYSQL de kayıtlı bir prosedür oluşturma • MYSQL de fonksiyon oluşturma, kullanma, güncelleme ve silme • MYSQL de bir tetikleyici oluşturma • MYSQL de geçici tablo oluşturma • Learn SQL Database Programming Chapter 12 • Learn SQL Database Programming Chapter 11 sayfa 333-362 • Ders Notları
14Konu Anlatımı: Verinin Keşfedilmesi ve İşlenmesi Sınıf-içi Uygulama (60 dk.): Verinin Keşfedilmesi ve İşlenmesi Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Veri setindeki nadir ya da aşırı değerlerin belirlenmesi 2. Veri setindeki eksik gözlemlerin belirlenmesi 3. Tekrarlayan gözlemlerin belirlenmesi 4. Düzenli ifadelerin kullanılması • Learn SQL Database Programming Chapter 13 sayfa 363-419 • Ders Notları
15Sınıf-içi Uygulama (150 dk.): Uçtan uca bir veri tabanı projesinin oluşturulması Sınıf-içi Tartışma (5 dk.): Öğrenilen kavramların pekiştirilmesi ve gerçek hayattaki karşılıkları ile ilgili tartışma.1. Derste öğrenilen tüm yöntemler kullanılarak oluşturulan uçtan uca bir web programlama projesinin sunulması • Ders Notları
16Final

Değerlendirme Sistemi

EtkinliklerSayıKatkı Payı
Devam/Katılım
Laboratuar
Uygulama
Arazi Çalışması
Derse Özgü Staj
Küçük Sınavlar/Stüdyo Kritiği
Ödev
Sunum/Jüri
Projeler
Seminer/Workshop
Ara Sınavlar260
Final140
Dönem İçi Çalışmaların Başarı Notuna Katkısı
Final Sınavının Başarı Notuna Katkısı
TOPLAM100

AKTS İşyükü Tablosu

EtkinliklerSayıSüresi (Saat)Toplam İşyükü
Ders Saati143
Laboratuar
Uygulama
Arazi Çalışması
Sınıf Dışı Ders Çalışması145
Derse Özgü Staj
Ödev
Küçük Sınavlar/Stüdyo Kritiği
Projeler
Sunum / Seminer
Ara Sınavlar (Sınav Süresi + Sınav Hazırlık Süresi)210
Final (Sınav Süresi + Sınav Hazırlık Süresi)115
Toplam İşyükü :
Toplam İşyükü / 30(s) :
AKTS Kredisi :
Diğer NotlarYok