Форматирование SQL
Вставьте запрос — получите его читаемым: ключевые слова заглавными, каждый крупный clause на своей строке, список select разбит по запятым. Строки и комментарии проходят байт в байт — форматтер, правящий литералы, ломает запросы.
Зачем нужен форматированный SQL
SQL — один из немногих языков, которые машины пишут в одну строку, а люди читают в инциденте в два часа ночи. Вся работа форматтера — этот момент: clause на строку выносит искомый WHERE к левому краю, а разбитый по запятым select показывает пропавший столбец вместо того, чтобы прятать его на 14-й позиции из 30.
Единственное правило, отделяющее безопасный форматтер от опасного, — неприкосновенность литералов. Этот инструмент сначала токенизирует строки, идентификаторы в кавычках и оба стиля комментариев: данные остаются данными.
Частые вопросы
Меняет ли он смысл запроса?
Нет. Двигаются только пробелы и регистр ключевых слов — и то и другое безразлично любому SQL-движку. Строковые литералы, идентификаторы в кавычках и комментарии сначала токенизируются и проходят нетронутыми: WHERE внутри строки остаётся ровно таким, каким вы его написали.
Какие диалекты он понимает?
Общее ядро: SELECT/FROM/WHERE/GROUP BY/ORDER BY, семейство JOIN, INSERT/UPDATE/DELETE, UNION — то, что люди реально вставляют. Незнакомый диалектный синтаксис просто остаётся на своей строке: не искажается, лишь не получает особого отступа.
Зачем ключевые слова делать заглавными?
Конвенция с целью: у SQL нет собственной подсветки, поэтому регистр — единственный сигнал, отделяющий структуру от данных в простом тексте. Все руководства по стилю, от оракловских до документации SQLite, пишут ключевые слова капсом именно поэтому.
Загружается ли мой запрос куда-то?
Нет — форматтер это несколько килобайт JavaScript в этой вкладке. В запросах регулярно встречаются имена таблиц, бизнес-логика, а порой и данные клиентов; ровно такому тексту нечего делать на чужом сервере ради красоты.
Похожие инструменты
- Конструктор схем и блок-схемРисуйте блок-схемы и диаграммы, соединяйте блоки стрелками, которые прокладывают себя сами, и раскладывайте всё автоматически. Экспорт в SVG.
- Генератор паролейСоздавайте надёжные пароли криптографическим генератором браузера с оценкой стойкости.
- HTML-сущностиКодируйте текст для HTML или декодируйте сущности обратно — ломающие разметку знаки, именованные наборы, числовые ссылки до эмодзи. Ровно один проход.