MySQL

MySQL Dersleri

Bu temel MySQL eğitimde, bazı temel SQL ifadelerini açıklamaktadır. İlişkisel veritabanı yönetim sistemini ilk kez kullanıyorsanız, bu eğitimde veri sorgulama, veri güncelleme, veri tabanlarını yönetme ve tablo oluşturma gibi MySQL ile çalışmak için bilmeniz gereken her şeyi bulabilirsiniz.

Eğer zaten PostgreSQL, Oracle ve Microsoft SQL Server gibi diğer ilişkisel veritabanı yönetim sistemlerine aşina iseniz, bu eğitim bilginizi yenilemek ve MySQL’in SQL dilinin diğer sistemlerden ne kadar farklı olduğunu anlamak için kullanabilirsiniz.

Bölüm 1. MySQL ile Başlarken

Bu bölüm MySQL ile başlamanıza yardımcı olur. MySQL’i kurmaya, örnek bir veritabanı indirmeye ve pratik yapmak için MySQL sunucusuna veri yüklemeye başlayacağız.

  • MySQL Nedir? – MySQL ne olduğunu ve neden dünyanın en popüler veritabanı sunucu sistemi olduğunu gösterir.
  • MySQL Kurmak
    • MySQL veritabanı sunucusunu kurmak – nasıl adım adım bilgisayarınıza MySQL veritabanı sunucusunun kurulacağını gösterir.
    • MySQL + PHP + Apache sunucusunu kurmak – XAMPP yada Easy PHP  paketlerinden her hangi birini kurarak MySQL Server kurulumunu yapabilirsiniz.
  • MySQL örnek veritabanını indirme –  sorgularda kullanmak için örnek bir veritabanı sunuyoruz. Yazıların çoğunda örnek veritabanını kullanacağız.
  • MySQL Editör kurmak
    • MySQL editör için PHPMyAdmin çoğunlukla kullanılmasına rağmen, Community ile birlikte Workbach de kullanabilirsiniz.
    • (HeideSQL Kurulum) Benim en çok kullandığım editör olan HeideSQL’i de tavsiye ederim. Ücretsiz ve tüm veritabanları ile uyumlu çalışmaktadır.
  • MySQL örnek veritabanını yükleme: Yükleme yazısındaki adımları takip ederek sorgularda kullandığımız kütüphane veritabanını kurabilirsiniz.

Bölüm 2. Verileri sorgulama

Bu bölüm, MySQL veritabanı sunucusundan veri sorgulamayı öğrenmenize yardımcı olur. Tek bir tablodan veri sorgulamanıza izin veren basit bir SELECT ifadesi ile başlayacağız.

  • SELECT – basit bir SELECT ifadesinin, verileri tek bir tablodan sorgulamak için nasıl kullanılacağını gösterir.
  • SELECT DISTINCT – bir sonuç setinde yinelenen satırları elimine etmek için DISTINCT operatörünü SELECT deyiminde nasıl kullanacağınızı öğrenin.

Bölüm 3. Verileri sıralama

  • ORDER BY – ORDER BY deyimini kullanarak sonuç kümesinin nasıl sıralanacağını gösterir. FIELD işlevli özel sıralama düzeni de ele alınacaktır.

Bölüm 4. Veri filtreleme

  • WHERE– belirtilen koşullara göre satırları filtrelemek için WHERE deyimini nasıl kullanacağınızı öğrenin.
  • AND – verileri filtrelemek için karmaşık bir koşul oluşturmak üzere Boole ifadelerini birleştirmek üzere AND işlecine tanıtın.
  • OR– sizi OR operatörüne tanıtın ve verileri filtrelemek için OR operatörünü AND operatörü ile nasıl birleştireceğinizi gösterin.
  • IN – bir değerin bir listedeki veya alt sorgudaki herhangi bir değerle eşleşip eşleşmediğini belirlemek için IN operatörünü WHERE deyiminde nasıl kullanacağınızı gösterir.
  • BETWEEN – BETWEEN operatörünü kullanarak bir aralığa göre verilerin sorgulanmasını gösterir.
  • LIKE – belirli bir desene dayanarak verileri sorgulama tekniğini sağlar.
  • LIMIT – SELECT ifadesinin döndürdüğü satır sayısını sınırlamak için LIMIT kullanın.
  • IS NULL – IS NULL işleci kullanarak bir değerin NULL olup olmadığını sınayın.

Bölüm 5. Tabloları Birleştirme

  • Tablo ve Sütun takma adları (alias) – sizi tablo ve sütun takma adları ile tanıştırır.
  • JOIN – size MySQL’de desteklenen inner join, left join ve right join dahil olmak üzere genel bir bakış sunar.
  • INNER JOIN – Başka bir tabloda eşleşen satırları olan bir tablodaki satırları sorgula.
  • LEFT JOIN – soldaki tablodaki tüm satırları ve sağdaki tablodaki eşleşen satırları döndürür, sağdaki tabloda eşleşen satır bulunmazsa null değerini döndürür.
  • RIGHT JOIN – tüm satırları sağdaki tablodan ve eşleşen satırları soldaki tablodan döndür, yoksa soldaki tabloda eşleşen satır bulunamadı.
  • CROSS JOIN – Birden fazla tablodaki satırların Kartezyen ürününü oluşturun.
    Kendiliğinden birleştirme – tablo diğer adını kullanarak bir tabloya kendiliğinden katılın ve aynı tablodaki satırları iç birleştirme ve sol birleştirme kullanarak bağlayın.

Bölüm 6. Verilerin gruplandırılması

  • GROUP BY – size satırları sütunlara veya ifadelere göre nasıl gruplandıracağınızı gösterir.
  • HAVING – grupları belirli bir koşula göre filtreler.
  • ROLLUP – GROUP BY deyiminde belirtilen sütunlar arasındaki hiyerarşiyi göz önünde bulundurarak birden fazla gruplama kümesi oluşturur.

Bölüm 7. Alt Sorular

  • Alt sorgu (Subquery) – Bir sorguyu (iç sorgu) başka bir sorguya (dış sorgu) nasıl yerleştireceğinizi ve dış sorgu için iç sorgunun sonucunu nasıl kullanacağınızı gösterir.
  • Türetilmiş tablo (Derived table) – sizi türetilmiş tablo kavramını tanıtın ve karmaşık sorguları basitleştirmek için nasıl kullanacağınızı gösterir.
  • EXISTS – satırların varlığını test eder.

Bölüm 8. MySQL’deki verilerin değiştirilmesi

Bu bölümde, çeşitli MySQL deyimlerini kullanarak tablolara veri ekleme, güncelleme ve silme işlemlerinin nasıl yapıldığını öğreneceksiniz.

  • INSERT – tabloya veri eklemek için INSERT deyiminin çeşitli biçimlerini kullanır.
  • INSERT INTO SELECT – bir sorgunun sonuç kümesinden bir tabloya veri ekler.
  • INSERT IGNORE – size bir tabloya satır ekleyen ve hatalara neden olan satırları yok sayan INSERT IGNORE ifadesini açıklar.
  • UPDATE – veritabanı tablolarındaki verileri güncellemek için UPDATE deyimini ve seçeneklerini nasıl kullanacağınızı öğretir.
  • UPDATE JOIN – INNER JOIN ve LEFT JOIN ile UPDATE JOIN deyimini kullanarak çapraz tablo güncellemesini nasıl yapacağınızı gösterir.
  • DELETE – bir veya daha fazla tablodan satırları silmek için DELETE ifadesinin nasıl kullanılacağını gösterir.
  • ON DELETE CASCADE – Bir ON DELETE CASCADE, yabancı bir anahtarın verilerini bir alt tablodan otomatik olarak silmek için bir üst tablodan verileri silerken nasıl kullanılacağını öğretir.
  • DELETE JOIN – birden fazla tablodaki verilerin nasıl silineceğini gösterir.
  • REPLACE – Verilerin nasıl ekleneceğini veya güncelleneceğini öğrenmek, tabloda veri olup olmamasına bağlıdır.
  • Hazırlanmış İfade (Prepared Statement) – size hazırlanan sorguyu bir sorguyu yürütmek için nasıl kullanacağınızı gösterir.

Bölüm 9. Ortak Tablo İfadeleri

  • Genel Tablo İfadesi veya CTE – ortak tablo ifadesi kavramını açıklar ve tablolardan veri sorgulamak için CTE’nin nasıl kullanılacağını gösterir.
  • Özyinelemeli CTE – hiyerarşik verileri değiştirmek için özyinelemeli CTE kullanın.

Bölüm 10. MySQL kısıtlamaları(constraints)

  • NOT NULL kısıtlaması(NOT NULL constraint) – NOT NULL kısıtlaması açıklanır ve nasıl bir NOT NULL sütunu tanımlayacağınızı gösterir  ya da mevcut bir sütuna NOT NULL kısıtlamasını nasıl ekleyeceğinizi gösterir.
  • Birincil anahtar kısıtlaması(Primary key constraint) – bir tabloda birincil anahtarını oluşturmak için birincil anahtar kısıtlamasını nasıl kullanacağınızı gösterir.
  • Yabancı anahtar kısıtlaması(Foreign key constraint) – yabancı anahtar ne olduğunu, nasıl tanımlandığını ve var olan sütunun nasıl yabancı anahtar yapılacağını gösterir.
  • UNIQUE kısıtlaması(UNIQUE constraint) – bir sütundaki veya tablodaki bir sütun grubundaki değerlerin benzersizliğini zorlamak için UNIQUE kısıtlamasını nasıl kullanacağınızı gösterir.
  • CHECK kısıtlaması öykünmesi(CHECK constraint emulation)– MySQL’de CHECK kısıtlamasını taklit etmenin çeşitli yollarını gösterir.

Bölüm 11. MySQL veritabanlarını ve tablolarını yönetme

Bu bölüm, veritabanı ve tablolar dahil olmak üzere MySQL’deki en önemli veritabanı nesnelerinin nasıl yönetileceğini gösterir.

  • MySQL veritabanı seçme -MySQL programı aracılığıyla bir MySQL veritabanı seçmek için USE deyimini nasıl kullanacağınızı gösterir.
  • Veritabanlarını yönetme – yeni bir veritabanı oluşturma, mevcut bir veritabanını kaldırma, bir veritabanı seçme ve tüm veritabanlarını listeleme dahil MySQL veritabanlarını yönetmek için çeşitli ifadeler gösterir.
  • CREATE DATABASE – MySQL Server’da nasıl yeni bir veritabanı oluşturulacağını gösterir.
  • DROP DATABASE – Mevcut bir veritabanını nasıl sileceğinizi öğrenin.
  • MySQL depolama motorları – her bir depolama motorunun özelliklerini anlamak çok önemlidir; böylece veritabanlarınızın performansını en üst düzeye çıkarmak için bunları etkin bir şekilde kullanabilirsiniz.
  • CREATE TABLE – CREATE TABLE deyimini kullanarak bir veritabanında nasıl yeni tablolar oluşturulacağını gösterir.
  • MySQL dizisi – tablonun birincil anahtar sütunu için otomatik olarak benzersiz sayılar oluşturmak üzere bir dizinin nasıl kullanılacağını gösterir.
  • ALTER TABLE – mevcut tablonun yapısını değiştirmek için ALTER TABLE ifadesinin nasıl kullanılacağını öğrenin.
  • Tabloyu yeniden adlandırma – RENAME TABLE ifadesini kullanarak bir tabloyu nasıl yeniden adlandıracağınızı gösterin.
  • Bir tablodan bir sütunun kaldırılması – ALTER TABLE DROP COLUMN deyiminin bir tablodan bir veya daha fazla sütunu kaldırmak için nasıl kullanılacağını gösterir.
  • Tabloya yeni sütun ekleme – ALTER TABLE ADD COLUMN deyimini kullanarak mevcut bir tabloya bir veya daha fazla sütunun nasıl ekleneceğini gösterir.
  • DROP TABLE – DROP TABLE deyimini kullanarak mevcut tabloların nasıl kaldırılacağını gösterir.
  • Geçici tablolar – MySQL geçici masasını tartışın ve geçici masaları nasıl yöneteceğinizi gösterin.
  • TRUNCATE TABLE – tablodaki tüm verileri hızlıca silmek için TRUNCATE TABLE ifadesinin nasıl kullanılacağını gösterir.

Bölüm 12. MySQL veri tipleri

MySQL Veri Tipleri ve Açıklamaları – MySQL’de çeşitli veri türlerini gösterir, böylece bunları veritabanı tablolarını tasarlarken etkili bir şekilde uygulayabilirsiniz.
INT – size tamsayı veri türünün nasıl kullanılacağını gösterir.
DECIMAL – Ondalık biçiminde kesin değerleri saklamak için DECIMAL veri türünü nasıl kullanacağınızı gösterir.
BIT – size BIT veri türünü ve bit değerlerinin MySQL’de nasıl depolanacağını tanıtın.
BOOLEAN – MySQL’in Boole değerlerini TINYINT’i (1) dahili olarak kullanarak nasıl ele aldığını açıklayın.
CHAR – sabit uzunlukta dize saklamak için CHAR veri türüne rehberlik eder.
VARCHAR – VARCHAR veri türü için temel kılavuzdur.
TEXT – TEXT veri türünü kullanarak metin verilerinin nasıl kaydedileceğini gösterir.
DATE – DATE veri türünü size tanıtır ve tarih verilerini etkili bir şekilde işlemek için bazı tarih işlevlerini gösterir.
TIME – TIME veri türünün özelliklerinde size rehberlik eder ve zaman verilerini işlemek için bazı yararlı geçici işlevlerin nasıl kullanılacağını gösterir.
DATETIME – DATETIME veri türünü size tanıtır ve DATETIME değerlerini değiştirmek için bazı yararlı işlevler sunar.
TIMESTAMP – sizi bir tablo için otomatik olarak başlatılan ve otomatik olarak güncellenen sütunları tanımlamanıza izin veren otomatik başlatma ve otomatik güncelleme adı verilen özellikleri tanıtır.
JSON – JSON belgelerini saklamak için JSON veri türünü nasıl kullanacağınızı gösterir.
ENUM – numaralandırma değerlerini saklamak için ENUM veri türünü doğru kullanmayı öğrenin.

Yorum bırak