Vai al contenuto
TextArray
100% locale

Minificatore SQL

Comprime uno script SQL eliminando commenti e spazi bianchi aggiuntivi.

Ingresso

Minificatore SQL

Incolla uno script SQL e questo strumento rimuove i commenti e comprime ogni serie di spazi bianchi, restituendo la versione più compatta ancora in esecuzione. Lavori tipici: incorporare una query come stringa di una riga nel codice dell'applicazione, confrontare un'istruzione scritta a mano con ciò che un ORM o un registro di query lente ha effettivamente prodotto, ridurre un lungo script di migrazione prima di archiviarlo o comprimere una query in un parametro URL o un campo JSON.

Un piccolo tokenizzatore esegue lo script carattere per carattere invece di applicare la ricerca e sostituzione cieca, quindi i valori letterali delle stringhe e gli identificatori tra virgolette non vengono mai modificati. Le stringhe con virgolette singole con caratteri di escape '' doppi, identificatori con virgolette doppie e nomi di backtick MySQL passano byte per byte, anche quando contengono sequenze -- o /* che sembrano solo commenti. La rimozione dei commenti copre -- commenti di riga e blocchi /* */ e può essere disattivata. La spaziatura stretta inoltre elimina gli spazi dopo una parentesi di apertura, prima di una parentesi di chiusura e attorno alle virgole. L'opzione layout inserisce l'intero script su una riga o inizia una nuova riga dopo ogni punto e virgola di livello superiore.

Due limiti onesti. Questo è l'opposto di un formattatore: non modifica le maiuscole e minuscole delle parole chiave, non rientra né abbellisce nulla: esegui il risultato attraverso un formattatore quando hai bisogno di un SQL leggibile. E i # commenti vengono deliberatamente lasciati intatti, perché la loro rimozione distruggerebbe i nomi delle tabelle #temp negli script T-SQL.

La minimizzazione viene eseguita interamente nel tuo browser. Le query tendono a esporre nomi di tabelle, dettagli di schema e logica di business e nulla di tutto ciò lascia il tuo dispositivo: nulla viene caricato, registrato o archiviato da nessuna parte. Il conteggio sotto l'output mostra i byte in entrata e in uscita, la percentuale salvata e il conteggio delle istruzioni.

FAQ

La minimizzazione può interrompere la mia query?
Le stringhe letterali e gli identificatori tra virgolette vengono copiati byte per byte, i commenti vengono rimossi interi e gli spazi bianchi vengono compressi solo tra i token, quindi lo script minimizzato rimane equivalente all'originale. Un avvertimento: alcuni database leggono le direttive dai commenti, come i suggerimenti dell'ottimizzatore Oracle: disattiva la rimozione dei commenti quando lo fa il tuo.
Perché # commenti non vengono rimossi?
Perché # inizia un commento solo in MySQL. In T-SQL, # e ## prefisso nomi di tabelle temporanee e la loro rimozione corromperebbe quegli script, quindi lo strumento lascia deliberatamente # da solo. Riscrivi i commenti MySQL # come --comments se hai bisogno che vengano rimossi.
Quali dialetti SQL supporta?
Il tokenizzatore comprende le virgolette condivise dai principali dialetti: stringhe con virgolette singole con caratteri di escape '', identificatori tra virgolette doppie e apici inversi MySQL. Non analizza mai la grammatica, quindi gli script PostgreSQL, MySQL, SQLite, SQL Server e Oracle funzionano tutti allo stesso modo.
Può anche formattare o abbellire SQL?
No. Minimizzare è la direzione opposta: rimuove la struttura invece di aggiungerla. Le maiuscole e minuscole delle parole chiave rimangono come scritte e nulla viene rientrato: utilizza un formattatore SQL quando hai bisogno di un layout leggibile.
Il mio SQL è caricato da qualche parte?
No. Tutto viene eseguito localmente nel tuo browser. Le query spesso rivelano schemi e logica aziendale, motivo per cui lo strumento non invia mai il tuo input a nessun server.