# Formateur et minifieur SQL

Mettez en forme du SQL avec chaque clause sur sa ligne, ou minifiez-le sur une seule ligne, pour MySQL, PostgreSQL, SQLite, SQL Server et BigQuery.

https://codeknife.dev/fr/formateur-sql/

## Ce qu’il fait

Met en forme du SQL avec chaque clause sur sa propre ligne, ou le comprime sur une seule ligne. Il lit MySQL, PostgreSQL, SQLite, T-SQL (SQL Server) et BigQuery en plus du SQL standard, et une erreur de syntaxe est signalée avec sa ligne et sa colonne.

## Comment l’utiliser

1. Collez du SQL, ou déposez un fichier `.sql`.
2. Choisissez **Formater** ou **Minifier**, puis le dialecte, la casse des mots-clés et l’indentation.
3. Copiez ou téléchargez le résultat, ou utilisez **Utiliser la sortie comme entrée** pour en faire l’entrée suivante.

## Exemples

Formater `select id,name from users where active=1` place `SELECT`, `FROM` et `WHERE` sur leurs propres lignes, avec les colonnes et les conditions indentées en dessous. Minifier la requête formatée donne `SELECT id,name FROM users WHERE active = 1`.

## Bon à savoir

- Seuls les espaces et, si vous le choisissez, la casse des mots-clés changent. Les noms, chaînes et nombres restent tels que saisis.
- La minification retire les commentaires `--` et `/* */`, mais garde les commentaires MySQL `/*! */` et les indications d’optimiseur `/*+ */`, qu’une base de données exécute.
- Choisissez le dialecte de votre base : les accents graves sont MySQL, les crochets sont T-SQL et les conversions `::` sont PostgreSQL.
- Le formateur se charge au premier formatage, ce premier résultat peut donc prendre un instant. La minification n’a besoin d’aucun téléchargement.

## Pourquoi le dialecte compte-t-il ?

Les bases de données écrivent noms et opérateurs différemment : MySQL met les noms entre accents graves, T-SQL entre crochets, et PostgreSQL a les conversions :: et les chaînes $$. Avec le mauvais dialecte, un SQL valide peut ne pas être lu ou être mal mis en forme.

## Questions fréquentes

### La mise en forme change-t-elle ce que fait ma requête ?

Non. Seuls les espaces et, si vous le choisissez, la casse des mots-clés changent. Les noms, chaînes et nombres restent tels que saisis. La minification retire les commentaires, sauf les variantes MySQL /*! */ et /*+ */, que la base peut exécuter.

### Pourquoi signale-t-il une erreur de syntaxe ?

Le formateur doit lire la requête pour la mettre en forme : il s’arrête donc au premier jeton illisible et donne sa ligne et sa colonne. Vérifiez d’abord le dialecte, puis l’endroit indiqué : une virgule, un guillemet ou une parenthèse fermante manquants.

### Cet outil envoie-t-il mon SQL quelque part ?

Non. Tout se passe dans votre navigateur. Ce que vous saisissez n’est jamais envoyé à nos serveurs.