SQL-minifier
Minifikálja a SQL-t a megjegyzések, sortörések és minden szükségtelen szóköz eltávolításával, miközben a karakterlánc-literálok, az idézőjelek közé tett azonosítók és a műveleti jelek változatlanok maradnak. Válasszon dialektust, például MySQL, PostgreSQL, T-SQL vagy BigQuery-t, hogy az idézőjelekre, megjegyzésekre és kötegekre vonatkozó szabályok megfeleljenek az adatbázisának. A minifier a le nem zárt karakterláncokat, megjegyzéseket és zárójeleket a sor és az oszlop megadásával jelzi, így alkalmas lekérdezések kódba ágyazására.
Gyakran ismételt kérdések
Mit távolít el az SQL-minifier?
Eltávolítja a sorvégi megjegyzéseket, a blokkmegjegyzéseket, a sortöréseket és a behúzást, és csak ott hagy meg egyetlen szóközt, ahol két szó vagy operátor egyébként összeforrna. A karakterlánc-literálok és az idézőjelek közé tett azonosítók pontosan úgy maradnak, ahogy le vannak írva.
Miért érdemes dialektust választanom?
Az adatbázisok eltérően használják az idézőjeleket és a megjegyzéseket. MySQL a # jelet megjegyzésként, a fordított perjeleket pedig escape karakterként kezeli, PostgreSQL dollárjellel idézőjelezett karakterláncokat használ, a T-SQL [szögletes zárójeleket] és GO kötegeket alkalmaz, a BigQuery pedig három idézőjeles karakterláncokat használ. A dialektus biztosítja, hogy a literálokon belül semmi ne változzon.
Megmaradnak bizonyos megjegyzések?
Igen. A MySQL és a MariaDB végrehajtható megjegyzései, azok a blokkmegjegyzések, amelyek szövege verziójelölővel kezdődik, valamint az optimalizáló utasításai, például /*+ INDEX(t) */, megmaradnak, mert befolyásolják az utasítás végrehajtását. Minden más megjegyzést eltávolít.
Mi történik a GO, / és DELIMITER sorokkal?
A kötegelválasztók, például a T-SQL esetén használt GO, az Oracle-szkriptekben szereplő / sor és a MySQL DELIMITER parancsok külön sorban maradnak. Az ügyfélprogramok csak így ismerik fel őket, ezért ha más kóddal egyesítenénk ezeket a sorokat, a szkript hibásan működne.
Elronthat egy lekérdezést a tömörítés?
A tömörítő csak a literálokon kívüli szóközöket és megjegyzéseket távolítja el, az operátorok karakterei között pedig meghagyja a szóközöket, így a - -1 nem válik megjegyzéssé. A lekérdezés ugyanúgy fut le, mint korábban.
Milyen hibákat észlel?
A le nem zárt karakterlánc-literálokat, idézőjelek közé tett azonosítókat, blokkmegjegyzéseket és dollárjellel idézőjelezett karakterláncokat, valamint a kiegyensúlyozatlan zárójeleket sor- és oszlopszámmal jelzi. A teljes SQL nyelvtant nem ellenőrzi.
Milyen dialektusok érhetők el?
Standard SQL, MySQL, MariaDB, PostgreSQL, SQLite, T-SQL, PL/SQL, BigQuery, Snowflake, Redshift, Spark SQL, Hive, Trino és Db2. Az alapértelmezett Standard SQL egyszeres idézőjelek közötti karakterláncokat használ fordított perjeles escape-ek nélkül, és azonosítókhoz elfogadja a dupla idézőjeleket, a fordított aposztrófokat és a szögletes zárójeleket.
Megváltoztatja a kulcsszavak kis- és nagybetűit?
Nem. A kulcsszavak, azonosítók és függvények megőrzik az eredeti kis- és nagybetűzésüket. Csak a szóközök és a megjegyzések kerülnek eltávolításra.
Mekkora lehet a bemenet?
Kérésenként legfeljebb 1 MB SQL. A sok utasítást tartalmazó hosszú migrációs szkriptek egyetlen menetben tömörülnek.
Tárolódik a SQL?
Nem. A lekérdezések feldolgozása memóriában történik, majd azonnal visszaküldjük őket. Soha nem mentjük el őket, csak a kérések méretét naplózzuk.