TanodTools
TR

SQL biçimlendirici

Bir sorguyu yapıştırın, veritabanınızı seçin; sorgu her yan tümce ayrı satırda ve girintili olarak geri gelsin.

Tamamen tarayıcınızda çalışır

Girinti

Yaklaşık 10 MB'a kadar girdi. Yalnızca düzeni değiştirir: SQL'inizi çalıştırmaz, bir şemaya karşı denetlemez ve iyileştirmez.

SQL sorgusu nasıl biçimlendirilir

  1. Sorguyu kutuya yapıştırın ya da nasıl çalıştığını görmek için Örnek ekle düğmesine basın.
  2. Lehçe altından veritabanınızı seçin, ardından anahtar sözcük harf boyutunu ve girinti boyutunu ayarlayın.
  3. Biçimlendirilmiş sorgu siz yazdıkça aşağıda görünür. Kopyalayın ya da .sql dosyası olarak indirin.

SQL'i okunur hale getirmek

Bir veritabanı sorguyu bir satırda da kırk satırda da aynı şekilde okur; günlüklerden, ORM'lerden ve izleme araçlarından yapıştırılan sorguların çoğu zaman tek bir kesintisiz dize olarak gelmesinin nedeni budur. Biçimlendirme her ana yan tümceyi (SELECT, FROM, WHERE, GROUP BY, ORDER BY) kendi satırına koyar, sütunları, koşulları ve alt sorguları altında girintiler; böylece sorgunun şeklini bir bakışta görür ve eksik bir join koşulunu fark edersiniz.

Düzen, seçtiğiniz lehçeyi izler, çünkü sözcükler ve simgeler veritabanları arasında farklıdır. price::numeric gibi bir PostgreSQL dönüşümü, $1 gibi numaralı bir parametre, MySQL'in ters tırnaklı adı, Oracle'ın CONNECT BY yan tümcesi ve SQL Server'ın TOP 10 ifadesi bir lehçede geçerli, diğerinde sözdizimi hatasıdır. Bağlı parametrelerin yer tutucuları (?, $1, :name, @name) tanınır ve olduğu gibi bırakılır.

Anahtar sözcüklerin harf boyutu sorgunun çalışmasını etkilemez, dolayısıyla tamamen bir ekip tarzıdır. Dilbilgisini anlayan bir biçimlendirici bunu güvenle değiştirebilir, çünkü hangi sözcüklerin anahtar sözcük, hangilerinin sütun adı ya da tırnak içindeki metin olduğunu bilir.

İpuçları

  • Bir sorguyu değişiklik öncesi ve sonrası mı karşılaştırıyorsunuz? İkisini de aynı ayarlarla biçimlendirin ve Metin karşılaştır ile karşılaştırın.
  • Sorgu JSON sütunları mı döndürüyor? Bir değeri okumak için JSON biçimlendir ve doğrula aracına yapıştırın.
  • Uzun bir betik boyunca bir tabloyu yeniden adlandırmanız mı gerekiyor? Biçimlendirmeden önce Bul ve değiştir bunu halleder.

Sık sorulan sorular

SQL'im yükleniyor mu?

Hayır. Biçimlendirme kodu bu siteden sunulan bir betiktir ve bir sorgu yapıştırdığınızda ilk kez yüklenir; sorgunun kendisi tarayıcınızda kalır ve hiçbir sunucuya gönderilmez.

Lehçe neden önemli?

Veritabanları kendi sözdizimlerini ekler. PostgreSQL'de :: dönüşümleri ve $1 parametreleri, SQL Server'da [köşeli parantezli] adlar ve TOP, MySQL ve MariaDB'de ters tırnaklı adlar vardır; BigQuery'nin ise kendi dizi ve struct biçimleri bulunur. Doğrusunu seçmek ayrıştırıcının sorgunuzu kabul etmesini sağlar. Emin değilseniz Standart SQL güvenli seçimdir, ancak satıcıya özgü eklentiler konusunda daha katıdır.

Veritabanımda sorunsuz çalışan bir sorgu için neden hata görüyorum?

Biçimlendirici satırları yalnızca yeniden girintilemez, ifadenin tamamını okur; bu yüzden kapatılmamış bir parantez ya da tırnak onu durdurur, başka bir lehçeye ait sözdizimi de öyle. Mesaj, vazgeçtiği satırı ve sütunu verir; en yaygın çözüm eşleşen lehçeyi seçmektir.

Biçimlendirme sorgunun yaptığı işi değiştirir mi?

Yalnızca boşlukları ve, siz seçerseniz, anahtar sözcüklerin harf boyutunu değiştirir. Dize değişmezleri, tırnaklı adlar ve sayılar metnini korur; bu yüzden BÜYÜK HARF seçtiğinizde tırnak içindeki 'select' küçük harf kalır.

Birkaç ifadeyi birlikte biçimlendirebilir miyim?

Evet. Noktalı virgülle ayrılmış ifadelerin her biri biçimlendirilir ve aralarında boş bir satır bırakılır.

Anahtar sözcüklerde hangi harf boyutunu kullanmalıyım?

İkisi de olur; bu bir stil tercihidir ve veritabanları bunu yok sayar. Büyük harfli anahtar sözcükler eski bir gelenektir ve düz metinde yan tümceleri öne çıkarır. Küçük harf, bu tarzda bir linter ya da ORM çıktısı kullanan kod tabanlarında yaygındır. Yazıldığı gibi bırak seçeneği büyük/küçük harf kullanımınıza dokunmaz.