Rehber

SQL Sorgusu Nasıl Biçimlendirilir?

SQL metnini girip uygun girinti değerini belirleyerek biçimlendirmeyi başlatabilirsiniz. Başarılı sonuçta metin yeniden girintilenir ve SQL anahtar sözcükleri büyük harfe çevrilir; sorgu çalıştırılmaz.

Araç SQL Biçimlendirici

Biçimlendirme ne sağlar?

SQL Formatter, verdiğiniz SQL metnini daha düzenli bir görünüme kavuşturmak için kullanılır. Başarılı bir biçimlendirme sonrasında metin yeniden girintilenir ve SQL anahtar sözcükleri büyük harfle yazılır. Böylece özellikle tek satıra sıkışmış, ekip içinde paylaşılacak veya gözden geçirilecek sorguların yapısını takip etmek kolaylaşabilir.

Araç SQL'i çalıştırmaz, bir veritabanına bağlanmaz ve sorgunun döndürdüğü verilerin doğruluğunu denetlemez. Çıktı, sorgunun metinsel düzeniyle ilgilidir; sorgunun sözdizimsel ya da mantıksal olarak hedeflediğiniz veritabanında çalışacağını tek başına göstermez.

SQL alanı isteğe bağlıdır ve değer verilmediğinde boş kabul edilir. Yalnızca boşluk karakterlerinden oluşan bir giriş de kabul edilir; bu durumda biçimlendirilmiş içerik boş olur. Boş olmayan bir metin için başlangıçtaki girinti değeri 2'dir. Genel bir lehçe değeri sağlanabilse de bu değer, belirli bir veritabanına ait ayrıştırma veya biçimlendirme kurallarını etkinleştirmez.

Uygulama adımları

  1. Biçimlendirmek istediğiniz SQL'i giriş alanına ekleyin. Bu değer metin olmalıdır; sayı, liste veya başka bir veri türü kabul edilmez. İçeriği eklemeden önce sorgunun yalnızca boşluklardan oluşmadığını kontrol edin, çünkü böyle bir giriş hata vermek yerine boş çıktı üretir.

  2. Boş olmayan metin için girinti değerini belirleyin. Değer önce tam sayıya çevrilir. Çevirme başarısız olduğunda ya da elde edilen sayı 0'dan küçük veya 8'den büyük olduğunda 2 kullanılır. Çevrilen değer 0 ile 8 arasındaysa bu değer uygulanır; bu nedenle dört boşluk düzeyinde bir düzen için 4 gibi uygun bir sayı girebilirsiniz.

  3. İsterseniz lehçe alanına bir değer yazın. Alanın kabul edilmesi, girilen lehçeye özel sözdiziminin denetlendiği anlamına gelmez. Mevcut biçimlendirme davranışı genel olduğundan, bu seçeneği PostgreSQL, MySQL veya başka bir veritabanının kurallarını doğrulayan bir mod olarak değerlendirmeyin.

  4. Biçimlendirme işlemini başlatın ve üretilen metni gözden geçirin. Ayrıştırma ve biçimlendirme başarılı olursa SQL anahtar sözcükleri büyük harfe çevrilir, satır yapısı yeniden düzenlenir ve girinti uygulanır. Birden fazla SQL ifadesi algılanırsa ifadeler arasına noktalı virgül ile yeni satır konur ve çıktının sonunda da bir noktalı virgül bulunur.

  5. Boş olmayan bir metin için sonuç oluşmadığında önce giriş türünü ve içeriğin boyutunu inceleyin. UTF-8 biçiminde 1.000.000 baytı aşan içerik biçimlendirme başlamadan reddedilir. Bunun yanında ayrıştırma kütüphanesinin kullanılamaması, SQL ifadesi algılanmaması veya ayrıştırma ya da biçimlendirme sırasında bir istisna meydana gelmesi işlemin başarısız olmasına yol açabilir.

  6. Çıktıyı kullanmadan önce biçimsel değişiklikleri kendi çalışma bağlamınızda kontrol edin. Büyük harf kullanımı ve girintinin yeniden düzenlenmesi okunabilirlik açısından yararlı olabilir, ancak sonuç sorgunun çalıştırıldığı anlamına gelmez. Özellikle lehçeye özgü ifadeler içeren metinlerde, biçimlendirilmiş görünümü hedef sistemin sözdizimi denetimi yerine koymayın.

Çıktıyı değerlendirme

Başarılı çıktı, metnin yeniden girintilendiğini ve SQL anahtar sözcüklerinin büyük harfe dönüştürüldüğünü gösterir. Bu görünüm, sorgunun okunmasını kolaylaştırabilir; ancak sorgunun veritabanında çalıştırıldığını veya beklenen kayıtları döndürdüğünü kanıtlamaz.

Birden fazla ifade verdiğinizde aradaki ayırıcıyı kontrol edin. İfadelerin noktalı virgül ve yeni satırla ayrılması, son ifadenin ise sonlandırıcı bir noktalı virgülle bitmesi beklenen çıktı biçimidir. Tek ifade içeren bir sonuçta da sonlandırıcı noktalı virgül görülebilir.

Boş bir sonuç, girişin yalnızca boşluklardan oluşması durumunda beklenen davranış olabilir. Buna karşılık boş olmayan içerikte çıktı alınamaması, ifadelerin algılanmaması veya ayrıştırma ve biçimlendirme yolunda bir hata oluşmasıyla ilgili olabilir. Bu durumda metnin gerçekten dize olduğunu, boyut eşiğini geçmediğini ve kullandığınız SQL yapısının ayrıştırılabilir bir ifade içerdiğini yeniden değerlendirin.

Girinti sayısının görünümü değiştirmemesi, girilen değerin geçerli aralık dışında kalmış olabileceğini düşündürür. Boş olmayan SQL'de dönüştürülemeyen değerler ile 0'dan küçük veya 8'den büyük sonuçlar 2'ye geri döner. Yalnızca boşluk içeren girişte ise araç girinti dönüşümünü yapmadan boş sonucu döndürdüğü için bu özel durum, normal girinti kurallarıyla karıştırılmamalıdır.

Lehçe alanının kabul edilmesi, belirli bir veritabanı lehçesi için başarı garantisi vermez. Sonucu uygulamaya almadan önce hedef veritabanınızın kendi araçlarıyla gerekli sözdizimi ve çalışma kontrollerini ayrıca yapın.

Uygulamalı örnek

Bir geliştirici, paylaşmadan önce tek satıra yakın yazılmış bir SQL sorgusunun daha okunabilir bir girinti düzenine kavuşmasını ister.

Bir kullanıcı select id, name from users where active = 1 metnini girer, girinti değerini 4 olarak belirler ve biçimlendirmeyi başlatır.

Başarılı sonuçta SELECT ve WHERE gibi SQL anahtar sözcükleri büyük harfe dönüştürülür, metin yeniden girintilenir ve çıktı sonlandırıcı bir noktalı virgülle biter.

Sınırlamalar

  • Biçimlendirme yolu SQL metnini düzenler, fakat SQL'i çalıştırmaz veya sorgu sonuçlarını doğrulamaz. Lehçe alanı kabul edilse de lehçeye özgü kurallar uygulanmadığından belirli bir veritabanı sözdiziminin denetlendiği varsayılmamalıdır.
  • 1.000.000 UTF-8 baytın üzerindeki boş olmayan içerik reddedilir; ayrıştırma kütüphanesi kullanılamadığında, ifade algılanmadığında veya biçimlendirme sırasında istisna oluştuğunda işlem başarısız olabilir.

Sık yapılan hatalar

  • Girinti alanına tam sayıya çevrilemeyen bir değer ya da 0 ile 8 dışında bir sayı girmek, boş olmayan SQL için 2 değerine dönülmesine neden olur. İstediğiniz düzeni elde etmek için bu aralıkta dönüştürülebilen bir sayı kullanın.

Sık sorulan sorular

Boş SQL girdisi biçimlendirilebilir mi?

Evet, fakat sonuç girişin niteliğine bağlıdır. Yalnızca boşluklardan oluşan içerik kabul edilir ve boş biçimlendirilmiş sonuç verir; boş olmayan içerik için ayrıştırılabilir SQL ifadeleri algılanmadığında işlem başarısız olabilir.

Girinti ayarı geçersizse ne olur?

Boş olmayan SQL'de değer önce tam sayıya çevrilir. Çevirme yapılamazsa veya sonuç 0 ile 8 aralığının dışındaysa 2 uygulanır; aralık içindeki dönüştürülmüş değer kullanılır.

Belirli bir SQL lehçesi seçilebilir mi?

Lehçe değeri kabul edilir, ancak mevcut biçimlendirme yolu bu değere göre lehçeye özgü ayrıştırma ya da biçimlendirme kuralları uygulamaz. Bu nedenle alanı belirli bir veritabanının sözdizimini doğrulayan bir seçenek olarak görmeyin.

Araç

SQL Biçimlendirici