Export SQL (.sql)
ISO/IEC StandardUn script SQL (Structured Query Language) est un fichier de commandes destiné aux bases de données relationnelles. Il contient des instructions DDL pour créer les tables et des instructions DML, comme INSERT, pour y ajouter des données.
Convertir SQLITE en SQL
Outil de conversion gratuit de SQLITE vers SQL dans le navigateur. Convertissez des fichiers instantanément sur votre appareil.
Inspection et métadonnées
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers SQL en inspectant leur séquence initiale d'octets binaires :
Signature d'en-tête au niveau des octets (octets magiques)
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers SQL en inspectant leur séquence initiale d'octets binaires :
SIGNATURE HEXADÉCIMALE (DÉCALAGE 0) :
Aucune signature fixe (SQL est du texte brut)REPRÉSENTATION ASCII : Aucune signature fixe
Normalisation : ISO/IEC 9075:2023 / norme ANSI SQL
Spécifications techniques
| Architecture de conteneur | Script en texte brut Unicode contenant des instructions de définition de données (DDL) et de manipulation de données (DML) |
| Compression | Texte brut non compressé (souvent compressé au format .sql.gz ou .sql.zst) |
| Ordre des octets | Flux de texte UTF-8 / Unicode |
| Espaces colorimétriques | Sans objet (script de base de données) |
| Canaux et structure | Définitions de schémas relationnels (tables, vues, index, clés étrangères) et lignes de données INSERT |
| Dimensions maximales | Pas de limite intrinsèque de longueur de texte (prend en charge les sauvegardes de plusieurs téraoctets) |
| Transparence | Aucune |
| Prise en charge du traitement en continu | Exécution en streaming transactionnel instruction par instruction |
Matrice de comparaison technique : SQL face aux concurrents
| Attribut technique | SQL (Actuel) | CSV | JSON | SQLITE |
|---|---|---|---|---|
| Conservation du schéma | Schéma complet (tables, types, clés étrangères) | Noms de colonnes d'en-tête uniquement | Structure de document auto-descriptive | Fichier de base de données binaire complet |
| Mode d’exécution | Script DDL/DML exécutable | Données de lignes et colonnes passives | Arborescence de documents passive | Requête directe dans un arbre B binaire |
| Standardisation | Norme ISO/IEC 9075 | RFC 4180 | RFC 8259 | Format de fichier ouvert SQLite |
| Relations de données | Contraintes de clés étrangères complètes | Tableau plat (sans relations) | Objets parents-enfants imbriqués | Contraintes relationnelles complètes |
Modes de corruption courants et guide de restauration hexadécimale
L'importation de la base de données échoue avec le message « ERROR: syntax error at or near... ».
Cause initiale: Inadéquation des dialectes SQL (par exemple, l'importation d'un dump MySQL utilisant des accents graves dans PostgreSQL) ou guillemets simples non échappés.
Récupération: Convertissez et nettoyez la syntaxe du dialecte avec l’outil Database Transpiler de File2File.app.
Analyse de sécurité et vecteurs d'attaque de l'analyseur
L'exécution de scripts SQL non fiables peut provoquer des injections SQL catastrophiques, des écritures de fichiers arbitraires ou une élévation de privilèges administratifs.
Vecteurs d’attaque connus
- Injection SQL (SQLi) permettant l'exécution de commandes administratives non souhaitées (par exemple, DROP TABLE, GRANT ALL).
- Lecture ou écriture de fichiers arbitraires sur le serveur avec « COPY ... FROM PROGRAM » ou « LOAD DATA INFILE ».
- Déni de service par le biais d'expressions de table communes (CTE) récursives non indexées.
Bonnes pratiques de défense: N'exécutez jamais de scripts SQL non fiables directement sur les serveurs de bases de données de production ; inspectez et nettoyez les requêtes dans des bacs à sable isolés.
Origines historiques et jalons
Principaux avantages
- La norme mondiale incontestée pour le stockage de données d'entreprise : compatible avec PostgreSQL, MySQL, SQLite, Oracle et SQL Server.
- Fidélité relationnelle complète : recrée les tables, clés primaires, clés étrangères, contraintes et index en plus des données.
- Exécution transactionnelle : les instructions peuvent être exécutées dans des transactions (BEGIN...COMMIT) pour garantir une restauration atomique de la base de données.
Limites techniques
- Incompatibilités entre dialectes : de subtiles différences de syntaxe (par exemple AUTO_INCREMENT vs SERIAL vs AUTOINCREMENT) nécessitent une traduction entre les moteurs de bases de données.
- Volume de texte important : les instructions SQL INSERT non compressées occupent nettement plus de place que les données stockées sous forme binaire dans une base.
- L’importation de sauvegardes de plusieurs gigaoctets peut être lente si la reconstruction des index n’est pas désactivée.
Faits intéressants
- SQL s’appelait à l’origine « SEQUEL » (Structured English Query Language). Son nom a été raccourci en SQL après un litige de marque avec l’avionneur Hawker Siddeley.
- La norme ISO recommande de prononcer les lettres séparément (« S-Q-L »), mais des millions de développeurs le prononcent familièrement comme le mot anglais « sequel ».
- SQLite, qui utilise le langage SQL, serait installé sur plus de 1 000 milliards d’appareils dans le monde.
Foire aux questions techniques
Qu'est-ce qu'un fichier .sql ?
Un fichier .sql est un script en texte brut contenant des commandes SQL qui créent des tables, établissent des relations et insèrent des lignes de données dans une base de données relationnelle.
Puis-je convertir des fichiers de sauvegarde SQL en CSV ou JSON ?
Oui. File2File.app peut analyser les fichiers de sauvegarde de base de données .sql et exporter les tables directement dans des feuilles de calcul CSV propres ou des documents JSON structurés.
Pourquoi mon fichier .sql MySQL ne fonctionne-t-il pas dans PostgreSQL ?
Les systèmes de bases de données utilisent des dialectes propriétaires qui diffèrent notamment par les types de données et l’échappement des guillemets. Lors d’une migration entre moteurs, vous devez adapter la syntaxe propre à chaque dialecte.
Conversions associées à SQL
La conversion d'un fichier de base de données SQLite en script texte d'export SQL transforme une base de données binaire en commandes textuelles lisibles pour faciliter la migration de bases de données et les importations sur serveur.
La conversion d'un script texte d'export SQL en un export de données JSON transforme des tables de bases de données relationnelles rigides en objets imbriqués flexibles pour les applications web modernes.
Transformez les scripts de sauvegarde de bases de données relationnelles en feuilles de calcul en tableaux simples pour une analyse de données et des rapports simplifiés.
Convertissez une sauvegarde SQL Server .bak prise en charge en script SQL texte pour l’examiner ou l’utiliser dans un flux de migration.
La conversion d'un script SQL en texte brut non compressé en un fichier de sauvegarde de base de données natif optimisé réduit la taille de stockage et accélère les temps de restauration du serveur.