Command Palette

Search for a command to run...

FO

Formateur SQL

Formater le SQL Messy en requêtes lisibles et en retrait ou minify SQL en une seule ligne

Qu'est-ce que le formateur SQL ?

SQL Formatter transforme SQL dense, à ligne unique ou écrit de manière incohérente en requêtes lisibles et adaptées aux critiques Il met chaque clause majeure - SELECT, FROM, WHERE, JOINS, GROUP BY, ORDER BY, HAVING, LIMIT, UNION - sur sa propre ligne, brise les colonnes SELECT sur des lignes séparées, des tirets ET/OU des conditions sous leur clause, et normalise la casse de mot-clé en haut ou en bas Le résultat est le genre de mise en page que vous voudriez dans une revue de code : une requête de 400 caractères d'un journal ORM devient une structure que vous pouvez scanner pour la condition de jointure manquante.

En tant que formateur de requête SQL, il prend une ligne comme sélectionner top 10 [ID d'ordre], total depuis dbo. [Détails de la commande] où total > 100 et statut = 'ouvrir' et renvoie SELECT TOP 10 sur la première ligne, [ID de commande] et total sur leurs propres lignes en retrait, puis FROM, puis WHERE avec la condition ET en retrait sous elle Les utilisateurs de SQL Server peuvent le traiter comme un formateur SQL pour SSMS : formatez le T-SQL dans ce formateur SQL en ligne, puis collez-le de nouveau dans SQL Server Management Studio. Il s'agit d'une page Web, pas d'une extension SSMS, donc il n'y a rien à installer.

Sous le capot, c'est un véritable tokenizer, pas un tas de règles de recherche et de remplacement. Les littéraux de chaînes (y compris les escales doubles et backslash), les identifiants à double et entre guillemets, les identifiants de serveur SQL entre crochets, les nombres, les opérateurs et les deux styles de commentaires (- Line et /* bloc */) sont lexés en tant que jetons atomiques avant toute décision de mise en page. Cela signifie qu'une valeur de colonne comme "Sélectionner * des utilisateurs" dans une chaîne n'est jamais confondu avec une clause, et le formatage peut restructurer l'espace blanc sans jamais corrompre le contenu littéral.

Le mode Minify fait le contraire : il réduit une requête formatée à une seule ligne - supprimer des commentaires, préserver chaque octet littéral par octet - ce qui est pratique pour la gravure de journaux, emballer des requêtes dans des charges utiles JSON ou des fichiers.env et comparer les formes de requêtes. Tout s'exécute côté client dans votre navigateur, de sorte que les requêtes de production contenant des noms de tableaux, des données client dans des littéraux ou des détails de schéma ne sont jamais téléchargées, enregistrées ou stockées nulle part.

Le formatage est basé sur Tokenizer plutôt que sur Regex, de sorte que les littéraux de chaîne et les commentaires contenant des mots-clés SQL ne sont pas reformatés comme s'ils étaient de code. Les dialectes diffèrent toujours d'une manière qu'aucun formateur ne peut s'installer, en particulier autour des identifiants de citation, de sorte que la sortie est normalisée plutôt que portable garantie.

Comment utiliser le formateur SQL ?

  1. Collez votre SQL

    Déposez une requête - un trait unique à partir d'un journal de débogage ORM, une requête de rapport écrite à la main ou un script à plusieurs déclarations séparés par des points-virgules.

  2. Choisissez le cas du mot-clé et l'indentation

    Choisissez des majuscules ou des minuscules pour les mots-clés et 2, 4 ou 8 espaces d'indentation pour correspondre à vos conventions d'équipe.

  3. Cliquez sur Format ou Réduire

    Le format produit une sortie clause par ligne avec des colonnes sélectionnées sur leurs propres lignes et/ou conditions. Minify réduit tout sur une seule ligne avec les commentaires supprimés et les littéraux intacts.

  4. Copier ou télécharger

    Copiez le résultat dans votre presse-papiers pour un fichier de révision de code ou de migration, ou téléchargez-le sous forme de fichier .sql.

Principales caractéristiques

  • Basé sur les tokénizers, Littéral-safe

    Les littéraux de chaînes, les identifiants et les commentaires sont lexed en premier - le formatage ne peut jamais modifier les données entre guillemets

  • Sauts de ligne compatibles avec les clauses

    Sélectionnez, à partir, où, joindre des variantes, grouper par, ordre, avoir, limiter et union démarrer chacun une nouvelle ligne, avec des sous-requêtes en retrait par la profondeur d'imbrication

  • Normalisation de cas de mots clés

    Une liste de mots clés complète (DML, DDL, fonctions, types) est convertie en majuscules ou en minuscules ; les identifiants sont laissés exactement comme écrit

  • Une colonne de sélection par ligne

    Les listes de sélection séparées par des virgules se décomposent sur des lignes en retrait individuelles, ce qui rend les requêtes étendues diffables dans les demandes d'extraction

Frequently Asked Questions

Oui. Le tokenizer comprend la syntaxe que les deux dialectes partagent ainsi que leurs différences de citation : les identifiants de backtick et les échappements de chaîne de backslash pour MySQL, les identifiants à double guillemet, :: Casts et JSON comme -> et ->> pour PostgreSQL. entre parenthèses [ identifiants] de SQL Server est également géré. Les instructions spécifiques aux dialectes qu'il ne reconnaît pas sont toujours formatées en toute sécurité, car les jetons inconnus sont transmis intacts.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

sql formatterformat sqlsql beautifiersql pretty printsql minifierformat sql query onlinesql indentationuppercase sql keywordsmysql formatterpostgresql formattersql query formattersql formatter onlineonline sql formattersql formatter for ssms