0Pricing
SQL Academy · Ders

SQLFluff ve Kod Denetleme

SQL'i SQLFluff ile denetleyin, kurum içi bir biçim standardı uygulayın ve yaygın biçimlendirme sorunlarını otomatik olarak düzeltin.

SQLFluff ve Kod Denetleme, CoddyKit'te ücretsiz bir SQL Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, SQL Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. SQL Academy kursu toplamda 4 dersten oluşur.

SQL Neden Biçim Denetiminden Geçirilir

SQL elle yazılır ve biçimlendirmede tutarsızlık oluşturmak kolaydır. Biçim denetimi, bir ekip stilini otomatik olarak uygular:

  • Küçük harfli veya UPPER anahtar sözcükler
  • Virgülün satır sonunda veya başında olması
  • Tablolar ve sütunlar için adlandırma kuralları
  • Girintileme
  • Karşıt örüntüler (SELECT *, belirsiz JOIN'ler vb.)

SQLFluff: Fiilî Biçim Denetleyicisi

Açık kaynaklıdır, lehçe duyarlıdır, birçok SQL çeşidini destekler ve dbt ile çok iyi çalışır:

pip install sqlfluff

sqlfluff lint models/
sqlfluff fix models/   # auto-fix where safe

SQLFluff'ı Yapılandırma

Bir .sqlfluff yapılandırması:

[sqlfluff]
dialect = postgres
templater = dbt
max_line_length = 120

[sqlfluff:rules:capitalisation.keywords]
capitalisation_policy = upper

[sqlfluff:rules:capitalisation.identifiers]
extended_capitalisation_policy = lower

Standart Kurallar

SQLFluff'ta adlandırma, yerleşim, büyük/küçük harf kullanımı, yapı ve belirsizlik için 50'den fazla kural vardır. Kuralları tek tek devre dışı bırakabilirsiniz:

[sqlfluff]
exclude_rules = AM05, ST05

Satır İçi Devre Dışı Bırakma

Tek bir satır için bir denetimi atlayın:

SELECT *  -- noqa: AM04
FROM users;

dbt ile Entegrasyon

SQLFluff, Jinja'yı ve ref() işlevini anlar:

sqlfluff lint --templater dbt models/

Ön İşleme Gönderim Kancası

Her gönderimden önce SQLFluff'ı çalıştırın:

# .pre-commit-config.yaml
repos:
  - repo: https://github.com/sqlfluff/sqlfluff
    rev: 3.0.0
    hooks:
      - id: sqlfluff-lint
      - id: sqlfluff-fix

CI İçinde

Biçim denetimi hataları içeren PR'leri engelleyin:

# GitHub Actions
- name: SQLFluff
  run: |
    pip install sqlfluff
    sqlfluff lint models/

Biçim Denetiminden Geçirilecek Karşıt Örüntüler

  • L044/AM04 — SELECT * kullanmaktan kaçının
  • AM05 — Örtük JOIN'den (virgülden) kaçının
  • ST05 — FROM içinde alt sorgu kullanmaktan kaçının (CTE'leri kullanın)
  • L010 — Tutarsız büyük/küçük harf kullanımı

Biçimlendirici ve Kod Stili Denetleyicisi

SQLFluff ikisini de yapar — denetler AND otomatik biçimlendirir:

sqlfluff format models/    # newer: dedicated format command
sqlfluff fix models/       # alias for format + safe rule fixes

Diğer Araçlar

  • pg_format — SQL'i okunaklı biçimde yazdırır (PostgreSQL odaklı)
  • SQLFluff en yaygın kullanılan araçtır; dbt ile tümleşir
  • Düzenleyicilerde kaydetme sırasında biçimlendirme (VS Code, JetBrains)

Özet

Kod stili denetimi, biçim tartışmalarını ortadan kaldırır ve gerçek hataları yakalar.

  • Kod stili denetimi ve biçimlendirme için SQLFluff
  • .sqlfluff kuralları yapılandırır
  • pre-commit ve CI içinde çalıştırın
  • Uçtan uca SQL iş akışları için dbt ile birleştirin

Hızlı Kontrol

SQL kod stili denetimi için (ve dbt şablonlarıyla çalışan) açık kaynak standardı hangi araçtır?

Sıkça Sorulan Sorular

“SQLFluff ve Kod Denetleme” dersi ücretsiz mi?

Evet — “SQLFluff ve Kod Denetleme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve SQL Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. SQL Academy kursu toplamda 4 dersten oluşur.

“SQLFluff ve Kod Denetleme” dersinde ne öğreneceğim?

SQL'i SQLFluff ile denetleyin, kurum içi bir biçim standardı uygulayın ve yaygın biçimlendirme sorunlarını otomatik olarak düzeltin. SQL Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

SQL Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te SQL Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“SQLFluff ve Kod Denetleme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu SQL Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her SQL Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. DBT (Data Build Tool) Temelleri
  2. SQLFluff ve Kod Denetleme
  3. SQL Testleri: dbt testleri, Great Expectations
  4. Şema Değişiklikleri için CI (GitHub Actions)
← SQL Academy Sayfasına Dön