SQL форматер
Форматирајте SQL барања за PostgreSQL, MySQL, SQL Server, Oracle, BigQuery, Snowflake и повеќе, со опции за големина на букви и вовлекување, во прелистувачот.
Како да форматирате SQL барање
- Залепете едно или повеќе барања или кликнете Отвори датотека за да вчитате датотека
.sql(до 10 MB). - Изберете Дијалект на вашата база на податоци, на пример PostgreSQL, MySQL или SQL Server (T-SQL).
- Изберете како да се пишуваат Клучни зборови (ГОЛЕМИ БУКВИ, мали букви или Задржи како што се впишани) и Вовлекување.
- Штиклирајте Без празни места околу операторите ако повеќе ви се допаѓа
a=b+1отколкуa = b + 1. - Кликнете Форматирај SQL, па копирајте го или преземете го резултатот. Промената на опција повторно го форматира барањето.
Барањето само се преформатира како текст. Никогаш не се извршува и никогаш не се испраќа до база на податоци или сервер.
Што прави форматерот
Алатката ја користи библиотеката sql-formatter со отворен код. Секоја наредба ја дели на клаузули и го става клучниот збор на секоја клаузула (SELECT, FROM, WHERE, GROUP BY, ORDER BY…) во свој ред, со содржината на клаузулата вовлечена под него. Колоните во листата SELECT се ставаат по една во ред, условите со AND и OR почнуваат во нови редови, а подбарањата и изразите CASE се вовлекуваат според нивото на вгнездување. Кратките изрази во загради остануваат во еден ред. Повеќе наредби одделени со точка-запирка се држат одделно со празен ред.
Се менуваат само празните места и големината на буквите. Текстуалните литерали, идентификаторите во наводници и коментарите се задржуваат точно, па форматираното барање дава ист резултат како оригиналот.
Зошто дијалектот е важен
SQL базите споделуваат јадро на јазикот, но се разликуваат во деталите, а форматерот мора да ги знае за правилно да го прочита барањето:
- идентификаторите се ставаат во
"двојни наводници"во стандарден SQL и PostgreSQL, во`обратни наводници`во MySQL, MariaDB и BigQuery, и во[загради]во SQL Server; - оператори како
->>и::на PostgreSQL или пристапот со:на Snowflake постојат само во некои дијалекти; - местата за параметри се разликуваат:
?,$1,:nameили@name; - секој дијалект има свои резервирани зборови и функции, на кои влијае опцијата Клучни зборови.
Ако добиете „Барањето не може да се анализира“, прво проверете дали избраниот дијалект одговара на вашата база. Грешката го покажува редот и колоната каде анализата запрела. Стандарден SQL е најстрогиот избор; изберете ја вашата вистинска база секогаш кога е можно.
Големина на буквите и совети за стил
Клучните зборови со големи букви остануваат најчестата конвенција бидејќи со еден поглед го одвојуваат јазикот од имињата на табелите и колоните. Малите букви се популарни кај тимови што го сметаат за полесно за читање, а Задржи како што се впишани го остава вашиот избор недопрен. Имињата на табели, колони и функции никогаш не се менуваат: само резервираните клучни зборови ја следат опцијата. За долги датотеки, доследното форматирање ги прави и разликите меѓу верзиите многу полесни за преглед.
Често поставувани прашања
Кои дијалекти се поддржани?
Стандарден SQL, PostgreSQL, MySQL, MariaDB, SQLite, SQL Server (T-SQL), Oracle (PL/SQL), Google BigQuery, Snowflake, Amazon Redshift, IBM Db2, Db2 for i, Apache Hive, Spark SQL, Trino/Presto, DuckDB, ClickHouse, SingleStoreDB, TiDB и Couchbase N1QL.
Дали алатката проверува дали моето барање е исправно?
Не. Проверува дали барањето може да се прочита во избраниот дијалект, но не и дали табелите или колоните постојат или дали барањето би се извршило. Тоа може да го потврди само вашата база.
Може ли да форматира складирани процедури?
Делумно. Наредбите во процедурите се форматираат, но процедуралните блокови (BEGIN … END, јамки, DECLARE) се распоредуваат поедноставно отколку во посветена IDE.
Дали моето барање се испраќа на сервер?
Не. Форматирањето се извршува во вашиот прелистувач, па барањата што содржат имиња на табели или податоци остануваат на вашиот компјутер.
Зошто мојот коментар е на друго место?
Коментарите се задржуваат, но коментар на крајот од ред може да се премести со елементот што го следи кога тој елемент оди во нов ред.
Поврзани алатки
- JSON форматер и валидатор Бесплатен JSON форматер и валидатор што улепшува, минифицира и проверува JSON во прелистувачот, со синтаксни грешки пријавени по ред и колона.
- JavaScript форматер и минификатор Улепшајте минифициран JavaScript, минифицирајте го со Terser или проверете ја синтаксата со точен ред и колона на грешката. Работи само во прелистувачот.
- XML форматер Форматирајте, минимизирајте и проверете XML во прелистувачот. Грешките се пријавуваат со ред и колона. Вашите датотеки никогаш не се качуваат.