Форматирование SQL-запросов
Раскладываем запрос по строкам и отступам, сверяем результат с исходником и предупреждаем об опасных местах: изменение без условия, склейка строк, пароли и телефоны прямо в тексте запроса. Запрос не покидает браузер.
Запрос никуда не отправляется: разбор, форматирование и сверка считаются в браузере. Поэтому сюда можно вставлять запросы из логов и из кода как есть.
Результат
Мины
Запрос раскладывается по строкам: ключевые слова начинают строку, поля и условия уходят на отступ, соединения таблиц и условия после AND и OR встают каждое на своё место, подзапросы в скобках раскрываются блоком с отступом. Несколько запросов подряд разделяются пустой строкой.
Обратная кнопка сжимает запрос в одну строку — так его удобно положить в код или в задачу.
Результат сверяется с исходником
Форматирование меняет только пробелы, переносы и регистр ключевых слов. Значит после него запрос можно разобрать заново и сверить поток лексем с исходным: они обязаны совпасть до знака. Если что-то разошлось, об этом сказано прямо, а не показано как готовый результат.
Опасные места в запросе
Разбор идёт по тому же дереву лексем, поэтому строки и комментарии за код не принимаются. Называем:
- DELETE и UPDATE без условия. Сюда же условие вида WHERE 1 = 1, которое ставят заготовкой и забывают дописать;
- склейку строки со значением: так собирают запрос подстановкой, и значение с кавычкой внутри меняет его смысл целиком;
- пароли, токены, телефоны, адреса почты и номера карт прямо в тексте запроса. Сами значения мы не показываем — иначе отчёт сам станет утечкой;
- незакрытую кавычку или комментарий, несходящиеся скобки;
- латинские буквы внутри русских имён: «с», «о», «е», «а» есть в обеих раскладках, на вид они одинаковы, а база такое имя не найдёт;
- AND и OR в одном условии без скобок, ограничение числа строк без сортировки, NOT IN с подзапросом.
Запрос остаётся в браузере
В запросах бывают пароли, телефоны и адреса живых людей. На сервер ничего не уходит: разбор, форматирование и сверка считаются на вашей стороне.
Другие инструменты
Просмотр исходного кода страницы
Исходный HTML страницы глазами робота Яндекса или Google
Визуальный HTML-редактор
Пишете как в текстовом редакторе — получаете готовый HTML
Код цвета HTML
Код цвета в HEX, RGB, HSL и HSB, с проверкой контраста
Эффект стекла в CSS
Стекло с проверкой читаемости надписи и запасным вариантом
Конвертер CSS в SCSS и обратно
CSS в SCSS со вложенностью и обратно, со сверкой результата
Конструктор сеток CSS Grid
Сетка под три экрана с готовым HTML и проверкой порядка блоков
Генератор CSS-градиентов
Градиент без серой середины, с проверкой читаемости текста
Генератор теней box-shadow
Тень слоями, с предпросмотром на двух фонах и проверкой видимости