Минификатор за SQL
Минифицирайте SQL, като премахнете коментарите, прекъсванията на редове и всеки ненужен интервал, като същевременно запазите непроменени низовите литерали, идентификаторите в кавички и операторите. Изберете диалект, например MySQL, PostgreSQL, T-SQL или BigQuery, за да съответстват правилата за кавички, коментари и пакетна обработка на вашата база данни. Минификаторът посочва незатворени низове, коментари и скоби с реда и колоната, което го прави подходящ за разработчици, които вграждат заявки в код.
Често задавани въпроси
Какво премахва минимизаторът SQL?
Премахва коментарите на ред, блоковите коментари, новите редове и отстъпите, като запазва единичен интервал само там, където две думи или оператори иначе биха се слели. Низовите литерали и идентификаторите в кавички остават точно както са написани.
Защо да избера диалект?
Базите данни използват различни начини за ограждане в кавички и коментиране. MySQL третира # като коментар и обратните наклонени черти като екраниращи символи, PostgreSQL поддържа низове в доларови кавички, T-SQL използва [скоби] и партиди GO, а BigQuery поддържа низове в тройни кавички. Диалектът гарантира, че нищо в литерал не се променя.
Запазват ли се някои коментари?
Да. Запазват се изпълнимите коментари MySQL и MariaDB, блоковите коментари, чийто текст започва с маркер за версия, както и подсказките за оптимизатора, например /*+ INDEX(t) */, защото променят начина на изпълнение на заявката. Всички останали коментари се премахват.
Какво става с редовете GO, / и DELIMITER?
Разделителите на партиди, например GO в T-SQL, редът / в скриптове за Oracle и командите MySQL DELIMITER остават на отделни редове. Клиентските инструменти ги разпознават само там, затова свързването им с друг код би повредило скрипта.
Може ли минимизирането да повреди заявка?
Минимизаторът премахва само интервалите и коментарите извън литералите и запазва интервалите между символите на операторите, така че - -1 никога не се превръща в коментар. Заявката се изпълнява по същия начин както преди.
Какви грешки се откриват?
Съобщава се за незатворени низови литерали, идентификатори в кавички, блокови коментари и низове в доларови кавички, както и за небалансирани скоби, с посочени ред и колона. Не се проверява цялата граматика на SQL.
Кои диалекти са налични?
Standard SQL, MySQL, MariaDB, PostgreSQL, SQLite, T-SQL, PL/SQL, BigQuery, Snowflake, Redshift, Spark SQL, Hive, Trino и Db2. Standard SQL е диалектът по подразбиране и използва низове в единични кавички без екраниране с обратна наклонена черта, а за идентификатори приема двойни кавички, обратни апострофи и скоби.
Променя ли се регистърът на ключовите думи?
Не. Ключовите думи, идентификаторите и функциите запазват първоначалния си регистър. Премахват се само интервалите и коментарите.
Какъв е максималният размер на входните данни?
До 1 MB SQL на заявка. Дългите скриптове за миграция с много заявки се минимизират с едно преминаване.
Съхранява ли се моят SQL?
Не. Заявките се обработват в паметта и се връщат веднага. Никога не се запазват; записва се само размерът на заявката.