Formater SQL : de la ligne unique au texte lisible
Dans les logs, un ORM écrit une requête de 800 caractères sur une seule ligne. Pour la relire, il faut d'abord la découper. Ce formateur le fait en 20 dialectes, dont le SQL standard, PostgreSQL, MySQL, BigQuery et T-SQL.
Mode d'emploi en cinq gestes
- Collez la requête dans SQL à formater. L'exemple contient un
SELECTavec jointures et sous-requête, unINSERTet unUPDATE. - Choisissez le Dialecte. Par défaut, c'est le SQL standard.
- Réglez la casse, l'indentation et les autres options. Chaque changement relance le formatage.
- En tapant, le formatage démarre après 300 ms environ sans frappe. Le bouton Formater le lance tout de suite.
- Cliquez sur Copier ou sur Télécharger .sql pour enregistrer le fichier
formatted.sql.
Erreur d'analyse : souvent un mauvais dialecte
Le SQL standard ne connaît pas le cast PostgreSQL a::int ni les noms entre crochets de T-SQL comme [dbo].[orders]. Le formateur affiche alors une erreur avec la ligne et la colonne. Avec le bon dialecte, le même texte passe sans problème.
Paramètres ?, $1, :name et @name
Les requêtes préparées contiennent des paramètres. Si l'erreur désigne l'un d'eux, ouvrez Style des paramètres et choisissez celui de votre pilote. Tous accepte les quatre. Les paramètres restent dans le texte, aucune valeur n'est insérée.
Casse, opérateurs, AND et OR
Les mots-clés sortent en majuscules, en minuscules ou tels que saisis. L'indentation est de 2 espaces, 4 espaces ou une tabulation. La largeur des expressions (50, 80 ou 120 caractères) fixe la longueur maximale d'une expression entre parenthèses sur une ligne. Entre deux requêtes, on met 1 ou 2 lignes vides. Les espaces autour des opérateurs peuvent disparaître (a=b), et AND et OR se placent au début ou à la fin de la ligne.
Ce que l'outil ne fait pas
Il change les espaces et la casse des mots-clés, rien de plus. Il n'exécute pas le SQL, ne connaît pas vos tables et ne dit pas si la requête est correcte. Les commentaires restent en place et le texte entre apostrophes n'est jamais modifié. Pour laisser un bloc intact, entourez-le de /* sql-formatter-disable */ et /* sql-formatter-enable */. La bibliothèque ne gère ni les procédures stockées ni un délimiteur autre que ;. Une entrée de plus de 2 000 000 de caractères est refusée avec un message.
Où va votre SQL
Nulle part. La bibliothèque fait partie du code de la page et s'exécute dans le navigateur. Le formatage n'envoie aucune requête, et le panneau réseau le confirme. Copier utilise le presse-papiers, et le téléchargement crée un fichier sur votre appareil.