Comment utiliser : Validateur SQL
- Choisissez votre dialecte de base de données (MySQL, PostgreSQL, SQL Server, SQLite, BigQuery et d'autres).
- Collez ou ouvrez votre SQL : plusieurs instructions séparées par des points-virgules sont acceptées.
- Les erreurs affichent la ligne, la colonne et les éléments attendus, avec l'emplacement fautif mis en évidence.
- Les instructions valides sont listées avec leur type et les tables concernées, ainsi que des avertissements pour les usages risqués.
Que vérifie un validateur SQL ?
Un validateur SQL (ou vérificateur de syntaxe) analyse votre requête avec la grammaire d'une base de données précise et indique si elle est bien formée : parenthèses équilibrées, mots-clés dans le bon ordre, expressions valides, virgules entre les colonnes, etc. Cet outil découpe votre script en instructions, analyse chacune séparément pour que vous voyiez toutes les erreurs d'un coup, et pointe la ligne et la colonne où l'analyse s'est arrêtée.
Avertissements de bonnes pratiques
| Avertissement | Pourquoi c'est important |
|---|---|
UPDATE / DELETE sans WHERE | Modifie chaque ligne de la table, ce qui est généralement une erreur. |
SELECT * | Récupère des colonnes dont vous n'avez peut-être pas besoin et casse le code lorsque des colonnes sont ajoutées ou réordonnées. |
INSERT sans liste de colonnes | Dépend de l'ordre des colonnes ; l'ajout d'une colonne le fait échouer. |
LIKE '%…' | Un joker en début de motif ne peut pas utiliser un index classique et force un parcours de la table. |
= NULL | N'est jamais vrai ; utilisez IS NULL. |
ORDER BY sans LIMIT dans une sous-requête, ou LIMIT sans ORDER BY | L'ordre des lignes n'est pas garanti sans tri explicite. |
Différences entre dialectes à l'origine des erreurs
- Guillemets pour les identifiants — MySQL et MariaDB utilisent les accents graves (
`order`), PostgreSQL, SQLite et le standard SQL utilisent les guillemets doubles, SQL Server utilise les crochets ([order]). - Limitation de lignes —
LIMIT 10dans MySQL, PostgreSQL et SQLite ;TOP 10ouOFFSET … FETCHdans SQL Server. - Upserts —
ON DUPLICATE KEY UPDATE(MySQL),ON CONFLICT … DO UPDATE(PostgreSQL, SQLite) ouMERGE(SQL Server, Snowflake, BigQuery). - Conversions de type — PostgreSQL accepte
valeur::int; la plupart des autres moteurs demandentCAST(valeur AS INT).
Rendez votre requête plus lisible avec le formateur SQL, générez des instructions à partir de données avec CSV vers SQL ou JSON vers SQL, et concevez vos tables avec le générateur CREATE TABLE.
Aussi recherché comme : vérificateur syntaxe sql, vérifier syntaxe sql, valider requête sql en ligne, linter sql, vérificateur de requête sql, détecteur d'erreurs sql.
Outils complémentaires : Validateur SQL
- Vérificateur de syntaxe MySQL — Validez vos requêtes MySQL avant de les exécuter.
- Vérificateur de syntaxe PostgreSQL — Validez vos requêtes PostgreSQL directement dans votre navigateur.
- Excel vers JSON — Ouvrez un classeur .xlsx ou collez directement des cellules depuis Excel ou Google Sheets pour obtenir un JSON propre.
- JSON vers Excel — Transformez un tableau JSON en véritable classeur Excel.
Questions fréquentes
Mon SQL est-il envoyé à un serveur ou à une base de données ?
Un résultat valide signifie-t-il que la requête s'exécutera ?
Pourquoi l'erreur est-elle signalée après ma faute ?
WHER est souvent lu comme un alias, si bien que l'erreur apparaît sur le mot suivant. Vérifiez aussi l'élément juste avant la position indiquée.