Outils de bases de données et SQL

Formateur SQLLire les requêtes sans perdre leur contenu

Lire les requêtes sans perdre leur contenu

Formateur SQL

Entrée SQL

Résultat

Traitement local dans le navigateur. Aucune connexion à une base ni historique enregistré.

Dialecte et présentation

Aucune connexion, consultation du schéma, vérification des droits ni commande EXPLAIN. La mise en forme ne valide pas la syntaxe ; un AST réussi ne prouve pas non plus que la requête s’exécute dans votre base. Seuls les mots-clés structurels changent de casse ; les mots contextuels comme ACTION ou NO gardent leur graphie pour protéger les identifiants.

Entrée : 100 000 unités UTF-16, 20 000 jetons, 50 niveaux de parenthèses et 200 instructions. AST : 5 000 jetons et 30 niveaux. Sortie : 1 000 000 d’unités ; aperçu par tranches de 20 000, export complet.

Saisissez du SQL ou choisissez un exemple.

Le Formateur SQL aide à relire une longue requête extraite des journaux avant de la modifier. Choisissez son dialecte d’origine : des guillemets semblables peuvent avoir des sens différents selon la base.

Pour formater SQL, commencez par les clauses et les jointures. Vous pouvez embellir SQL avec une indentation SQL régulière, ou réduire les espaces avec la sortie compacte. Une mise en page réussie ne prouve pas que la requête fonctionne.

Pourquoi utiliser ce Formateur SQL ?

Suivre le fil des clauses

Le Formateur SQL sépare les clauses et harmonise les retraits. Il compare les chaînes, les nombres et les commentaires à la source et refuse une réécriture dont il ne peut pas préserver le contenu.

Une requête dense devient plusieurs lignes indentées ; les blocs de chaînes et de commentaires restent intacts.

Distinguer structure et présentation

Le mode AST utilise un autre analyseur pour quatre dialectes. Oracle reste disponible pour la mise en forme, mais sans AST. Cet arbre représente une interprétation grammaticale, pas un plan d’exécution.

Une requête se ramifie en arbre syntaxique à côté d’un panneau de texte indépendant.

Choisir la grammaire avant le style

01

Sélectionner le vrai dialecte

MySQL, PostgreSQL, SQLite, SQL Server et Oracle ont des règles de citation différentes. Choisir PostgreSQL ne traduit pas une requête MySQL ; cela change la grammaire utilisée pour cette opération.

02

Choisir le type de résultat

La mise en forme facilite la lecture ; le mode compact réduit les espaces ; AST produit du JSON. Le retrait et la casse concernent SQL. L’arbre impose des limites plus strictes aux nombres et à la complexité.

03

Vérifier avant de remplacer

Le traitement automatique attend 350 ms. Désactivez-le pour utiliser le bouton ou Ctrl/Cmd+Enter. La reprise du résultat ouvre un aperçu ; après application, Annuler restaure le texte, les réglages et le résultat précédents.

Deux moteurs, des rôles distincts

Cinq dialectes de mise en forme

sql-formatter propose deux espaces, quatre espaces ou des tabulations, avec des mots-clés en majuscules, minuscules ou inchangés. La configuration préserve la casse des identifiants, fonctions et types. Seuls les mots-clés structurels changent de casse ; les mots contextuels comme ACTION ou NO gardent leur graphie pour protéger les identifiants.

Compression avec commentaires

Les espaces hors des jetons sont réduits sans supprimer les commentaires de ligne, blocs ou indications exécutables. Les sauts de ligne nécessaires entre chaînes PostgreSQL sont conservés.

Un arbre syntaxique délimité

node-sql-parser traite son sous-ensemble de MySQL, PostgreSQL, SQLite et Transact-SQL. Le JSON exporté contient uniquement l’arbre actuel, jamais l’historique de l’éditeur ni les anciennes entrées.

Ce que le résultat ne vérifie pas

Aucune exécution en base
Aucune connexion, consultation du schéma, vérification des droits ni commande EXPLAIN. La mise en forme ne valide pas la syntaxe ; un AST réussi ne prouve pas non plus que la requête s’exécute dans votre base.
Les scripts complets sont exclus
Procédures, déclencheurs, définitions de fonctions, blocs BEGIN/DECLARE, lots GO, DELIMITER personnalisé, modèles et métacommandes du client sont hors périmètre. Oracle n’a pas de mode AST.
Précision des nombres dans l’AST
Les entiers décimaux et décimaux ordinaires à 15 chiffres significatifs maximum sont acceptés. Les exposants et l’hexadécimal sont refusés dans ce mode. Les nœuds numériques doivent correspondre à la source ; les sorties SQL gardent sa précision. Un chiffre doit précéder le point décimal (0.5 plutôt que .5).
Certains sauts de ligne restent
La sortie compacte ne promet pas une seule ligne : supprimer le saut après -- peut transformer la suite en commentaire. L’effet réel des indications ou commentaires exécutables sur le serveur n’est pas examiné.
Des limites explicites
Entrée : 100 000 unités UTF-16, 20 000 jetons, 50 niveaux de parenthèses et 200 instructions. AST : 5 000 jetons et 30 niveaux. Sortie : 1 000 000 d’unités ; aperçu par tranches de 20 000, export complet.

Questions sur le Formateur SQL

Comment mettre en forme ses requêtes SQL ?

Un dialecte fixe et des retraits cohérents facilitent la lecture des jointures et sous-requêtes. Ce Formateur SQL distingue la présentation de l’arbre syntaxique. Relisez aussi la requête modifiée dans le contexte de votre base.

Y a-t-il une raison d’écrire les mots-clés SQL en majuscules ?

Les majuscules rendent les clauses plus visibles, mais restent une convention. Choisissez les minuscules ou la casse d’origine si votre projet le préfère. Les chaînes et identifiants entre guillemets ne sont pas convertis.

Peut-on ranger SQL sans multiplier les lignes ?

Choisissez la sortie compacte. Elle réduit les espaces extérieurs tout en conservant les commentaires et les sauts nécessaires après un commentaire de ligne ou entre des chaînes PostgreSQL adjacentes.

Peut-on vérifier une requête MySQL sans l’exécuter ?

AST indique si cet analyseur accepte la grammaire. Il ne peut vérifier les tables, les types des colonnes, les droits ou le comportement du serveur. Un simple résultat formaté ne confirme que le traitement de présentation.

Pourquoi les métacommandes perturbent-elles les formateurs SQL ?

Les commandes psql à barre oblique inverse appartiennent au client, pas à la grammaire SQL ordinaire. Gardez le script original séparément et extrayez la requête à formater ; ces commandes ne sont pas interprétées ici.

Un problème de mise en forme ?

Relire la prochaine requête

Avec le Formateur SQL, comparez le texte lisible, la version compacte ou un arbre pris en charge avant de reprendre le résultat dans votre éditeur.