Asosiy qismga oʻtish

SQL soʻrovlarini formatlash

MySQL, PostgreSQL, SQL Server, SQLite, BigQuery, Oracle va yana 14 ta dialekt uchun SQL ni oʻzingiz tanlagan uslubda chiroyli koʻrinishga keltiring yoki siqing — bevosita brauzeringizda.

Formatlangan
Soʻrovni chiroyli koʻrinishga keltirish uchun “SQL ni formatlash”ni bosing.
Brauzeringizda ishlaydi · yuklanmaydiQanday ishlaydi

SQL formatlovchi: foydalanish tartibi

  1. 1

    SQL ni joylashtiring

    Soʻrovni yoki butun skriptni joylashtiring yoxud .sql faylni oching; “Namuna” sinab koʻrish uchun tartibsiz soʻrovni koʻrsatadi.

  2. 2

    Dialektni tanlang

    Tirnoqlar, operatorlar va kalit soʻzlar toʻgʻri tanilishi uchun maʼlumotlar bazangizni tanlang.

  3. 3

    Uslubni belgilang

    Jamoangiz qoidalariga mos kalit soʻzlar registri, chekinish, vergul oʻrni va joylashuvni tanlang.

  4. 4

    Formatlang va nusxalang

    “SQL ni formatlash” yoki “Siqish”ni bosing, soʻng rangli natijani nusxalang yoki .sql qilib yuklab oling.

Cheklovlar va Pro

Bepul, roʻyxatdan oʻtishsiz: 20 ta dialekt, 10 MB gacha .sql fayllar va 20 soniya ichida formatlanadigan skriptlar; 600 000 belgidan uzun natija qisman koʻrsatiladi, lekin toʻliq nusxalanadi yoki yuklab olinadi.

Pro reklamani olib tashlaydi; formatlovchining oʻzi barcha tariflarda bir xil. Pro tarifini koʻrish

SQL formatlovchi haqida

Logdagi, ORM debug chiqishidagi yoki hamkasbingiz Telegram da yuborgan bir qatorli soʻrovni joylashtiring: formatlovchi uni ehtiyotkor dasturchi yozgandek tartiblaydi — har bir band alohida qatorda, tanlangan ustunlar va JOIN lar oʻz kalit soʻzi ostida chekinish bilan, ichki soʻrovlar esa tuzilma bir qarashda koʻrinadigan qilib joylashtiriladi. U 20 ta SQL dialektini tushunadi — standart SQL, MySQL, MariaDB, PostgreSQL, SQL Server T-SQL, SQLite, Oracle PL/SQL, BigQuery, Snowflake, Redshift, Spark, Trino, DuckDB, ClickHouse, Hive, Db2, Db2 for i, SingleStore, TiDB va Couchbase N1QL — shuning uchun teskari tirnoqli identifikatorlar, kvadrat qavslar, :: tur oʻzgartirishlari yoki dollar bilan tirnoqlangan satrlar kabi dialekt sintaksisi buzilmaydi.

Uslubni oʻzingiz tanlaysiz: kalit soʻzlar bosh harflarda, kichik harflarda yoki yozilganidek; funksiya nomlari va maʼlumot turlari ham shunday; ikki yoki toʻrt boʻsh joy yoxud tab; vergullar qator oxirida yoki boshida; AND va OR qator uzilishidan oldin yoki keyin; kalit soʻzlarni ustun qilib tekislaydigan standart yoki jadvalsimon joylashuv. Bir nechta buyruqli skriptlar boʻsh qator bilan ajratiladi. “Siqish” esa aksini qiladi: izohlar va ortiqcha boʻsh joylarni olib tashlaydi, satrlar, tirnoqlangan nomlar va optimallashtiruvchi ishoralariga tegmaydi.

Natija sintaksis boʻyicha rangli koʻrsatiladi, uni nusxalash yoki .sql fayl qilib yuklab olish mumkin. Formatlash ochiq kodli sql-formatter kutubxonasi bilan bajariladi: u birinchi marta formatlash tugmasini bosganingizda yuklanadi va fondagi alohida oqimda ishlaydi, shuning uchun uzun skriptlar sahifani qotirmaydi.

Formatlovchi faqat boʻsh joylar va harflar registrini oʻzgartiradi. U jadval yoki ustun nomlarini tekshirmaydi, soʻrovni bajarmaydi va tezlik uchun qayta yozmaydi; gʻayrioddiy sintaksisli saqlanadigan protseduralar uchun eng yaqin dialektni tanlash kerak boʻlishi mumkin.

Maxfiylik

SQL brauzeringiz ichida Web Worker yordamida formatlanadi, shuning uchun jadval nomlari, mijozlar maʼlumotlari yoki parollar bor soʻrovlar hech qachon serverga yuborilmaydi. Lokal xotirada dialekt va uslub tanlovingiz saqlanadi, SQL ning oʻzi saqlanmaydi.

Imkoniyatlar

20 ta SQL dialekti

MySQL, PostgreSQL, SQL Server, Oracle, BigQuery, Snowflake va yana 14 tasi.

Oʻz uslubingiz

Kalit soʻzlar registri, chekinish, qator boshi yoki oxiridagi vergullar, AND/OR oʻrni va jadvalsimon joylashuv.

Siqish ham bor

Kodga joylash uchun izoh va boʻsh joylarni olib tashlaydi, satrlar va ishoralar saqlanadi.

SQL formatlovchi: koʻp beriladigan savollar

Formatlash soʻrovim bajaradigan ishni oʻzgartiradimi?
Yoʻq. Faqat boʻsh joylar, qator uzilishlari hamda kalit soʻzlar, funksiyalar va maʼlumot turlarining registri oʻzgaradi; identifikatorlar, satr literallari va izohlar aynan saqlanadi. SQL kalit soʻzlari registrga sezgir emas, shuning uchun ularni oʻzgartirish xavfsiz. Boshqa vositalarda identifikatorlar registrini oʻzgartirsangiz, ehtiyot boʻling: PostgreSQL tirnoqlangan nomlarni registrga sezgir deb oladi, shu sababli bu formatlovchi ularga tegmaydi.
Nega tahlil xatosi chiqyapti?
Formatlovchi buyruq tuzilishini tanib olishi kerak, shuning uchun yopilmagan qavs, tushib qolgan kalit soʻz yoki boshqa maʼlumotlar bazasining sintaksisi uni toʻxtatadi. Xabarda qator, ustun va u yerda nima kutilgani yoziladi. Maʼlumotlar bazangiz ishlatadigan dialektni tanlang — kvadrat qavsli identifikatorlar uchun SQL Server, teskari tirnoqlar uchun MySQL, MariaDB yoki BigQuery kerak — va oxirida tugallanmagan buyruq bor-yoʻqligini tekshiring.
Vergullar qator boshida turgani yaxshimi yoki oxirida?
Qator oxiridagi vergullar eng keng tarqalgan uslub va koʻpchilik vositalar shunday yozadi. Qator boshidagi vergullar oxirgi ustunni izohga aylantirishni osonlashtiradi va ustun qoʻshilganda oʻzgarishlar farqini bitta qatorda qoldiradi, shuning uchun baʼzi maʼlumotlar jamoalari aynan shuni afzal koʻradi. Jamoangiz qaysi birini ishlatsa, shuni tanlang; bu sozlama faqat standart joylashuvga taʼsir qiladi.
Saqlanadigan protseduralar va koʻp buyruqli skriptlarni formatlaydimi?
Ha. Butun skriptni joylang: har bir buyruq, jumladan CREATE TABLE, INSERT, UPDATE, MERGE va keng tarqalgan protsedura bloklari formatlanadi va boʻsh qator bilan ajratiladi. Ishlab chiqaruvchiga xos protsedura kodi, masalan, GO ajratgichli murakkab T-SQL paketlari yoki PL/SQL paketlari toʻliq tushunilmasligi mumkin; mos dialektni tanlang va biror qism xato bersa, kichikroq bloklarga boʻlib formatlang.
“Siqish” nimalarni olib tashlaydi?
Siqish -- va /* */ izohlarini (MySQL va MariaDB da # izohlarini ham) oʻchiradi, ketma-ket boʻsh joy va qator uzilishlarini bitta boʻsh joyga qisqartiradi hamda vergul va qavslar yonidagi boʻsh joylarni olib tashlaydi. Satr literallari, tirnoqlangan identifikatorlar va /*+ … */ yoki MySQL dagi /*! … */ koʻrinishidagi optimallashtiruvchi ishoralari saqlanadi, shuning uchun siqilgan soʻrov asl nusxa bilan aynan bir xil ishlaydi.