Что делает этот форматировщик SQL
Этот инструмент выполняет две задачи. Во-первых, он форматирует SQL: один пункт на строку, последовательная вставка, буквы больших или малых ключевых слов и читаемые блоки JOIN и CASE, используя проверенный в бою двигатель sql-formatter с диалектом. Во-вторых, он выполняет ** базовую конверсию диалектов ** между MySQL, PostgreSQL, SQLite и SQL Server, обрабатывая различия, которые чаще всего встречаются при перемещении запроса или схемы между базами данных. Все работает локально, поэтому производственные запросы, содержащие реальные названия таблиц, никогда не покидают ваш браузер.
Как пользоваться
- Вставь SQL в вход.
- Выберите ** источник диалекта ** и, если вы хотите конвертировать, ** целевой диалект **. Оставьте цель как "держать" только формат.
- Выберите ключевое слово и ширину отступления.
- Проверьте панель заметок: все, что преобразователь не смог перевести безопасно, перечислено там.
- Копирую результат.
Что обрабатывает конвертер
- Идентификатор с цитатами:
`name`(MySQL) ↔"name"(PostgreSQL/SQLite) ↔[name](SQL Server). - Ограничения строки:
LIMIT n OFFSET mTOP nOFFSET m ROWS FETCH NEXT n ROWS ONLY. - Авто-увеличение:
AUTO_INCREMENTSERIAL/GENERATED ... AS IDENTITYAUTOINCREMENTIDENTITY(1,1). - Обычные типы:
DATETIME/TIMESTAMP,TINYINT(1)/BOOLEAN/BIT,NVARCHAR,TEXT,BLOB/BYTEA/VARBINARY(MAX). - Функции:
NOW()/GETDATE()/CURRENT_TIMESTAMP,IFNULL/ISNULL/COALESCE,RAND()/RANDOM(),CONCAT||. - Литералы строки и комментарии защищены, поэтому ключевое слово внутри
'quotes'никогда не переписывается.
Ограничения
Конверсия диалектов основана на шаблонах, а не полный компилятор. Храненные процедуры, триггеры, специфические для поставщика функции (чуда рамки окна, операторы JSON, MERGE, ON DUPLICATE KEY и ON CONFLICT) и детали сортировки требуют ручного обзора. Обращайтесь с выходом как с сильным первым проектом и проверьте его против целевой базы данных.