Formattatore MySQL
Formattate query e script MySQL con le regole di MySQL per identificatori tra backtick, escape con barre rovesciate nelle stringhe, commenti # e blocchi DELIMITER. Ogni clausola inizia su una riga propria, le colonne e le condizioni sono rientrate e le clausole MySQL come ON DUPLICATE KEY UPDATE restano unite. Le stringhe, i commenti e le parentesi non chiusi vengono segnalati con riga e colonna, aiutando gli sviluppatori a leggere e revisionare il codice del database.
Domande frequenti
Quale sintassi di MySQL riconosce il formattatore?
Riconosce identificatori tra backtick, stringhe tra apici singoli e doppi con escape tramite barre rovesciate e apici raddoppiati, valori letterali esadecimali, binari e nazionali come X'FF', B'101' e N'text', introduttori del set di caratteri come _utf8mb4'text' e variabili @user. Tutto ciò che si trova all'interno di un valore letterale resta esattamente come scritto.
Come vengono gestiti i commenti?
I commenti con cancelletto (#) e i commenti con doppio trattino (--) restano al loro posto. Come in MySQL, un doppio trattino avvia un commento solo se è seguito da uno spazio o da un'interruzione di riga, quindi a--1 resta un'espressione. I commenti di versione eseguibili restano come sono.
Come viene organizzata la query?
Le clausole principali come SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY e LIMIT iniziano su righe separate, con il contenuto rientrato sotto ciascuna. Le colonne selezionate sono disposte una per riga, AND e OR iniziano su righe nuove e ogni join ha una riga propria.
Sono supportate clausole specifiche di MySQL?
Sì. ON DUPLICATE KEY UPDATE, LOCK IN SHARE MODE, FOR UPDATE e FOR SHARE vengono mantenute insieme in un'unica clausola invece di essere suddivise su più righe.
Posso formattare procedure memorizzate e trigger?
Sì. I comandi DELIMITER restano su righe separate, il delimitatore personalizzato come // o $$ chiude l'istruzione e i blocchi BEGIN e END con IF, WHILE e LOOP vengono rientrati.
Modifica le maiuscole delle parole chiave?
No. Le parole chiave, i nomi delle funzioni e gli identificatori mantengono le maiuscole e minuscole originali, quindi select e SELECT restano invariati. Cambiano solo gli spazi vuoti e le interruzioni di riga.
Il formattatore verifica che la mia query sia valida?
Verifica che le stringhe, gli identificatori tra virgolette e i commenti di blocco siano chiusi e che le parentesi siano bilanciate, segnalando i problemi con riga e colonna. Non esegue la query né controlla i nomi delle tabelle o l'intera grammatica di MySQL.
Posso cambiare l'indentazione?
Sì. Scegliete 2 o 4 spazi oppure tabulazioni per ogni livello. Gli elenchi brevi tra parentesi restano su una riga, mentre quelli più lunghi e le sottoquery aprono un blocco rientrato.
Qual è la dimensione massima dell'input?
Fino a 1 MB di SQL per richiesta, con un massimo di 128 KB per singola istruzione. Gli script con molte istruzioni vengono formattati una alla volta e separati da righe vuote.
Il mio SQL viene memorizzato?
No. Le query vengono formattate in memoria e restituite subito. Non vengono mai salvate e vengono registrate solo le dimensioni delle richieste.