Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
logiciel:sql:sqlite:start [2021/04/05 11:49] – [Commandes SQLite] admin | logiciel:sql:sqlite:start [2022/08/13 21:57] (Version actuelle) – modification externe 127.0.0.1 |
---|
<cli prompt='> '>sqlite> </cli></cli>Le prompt change et signale que vous êtes dans le **terminal SQlite** : | <cli prompt='> '>sqlite> </cli></cli>Le prompt change et signale que vous êtes dans le **terminal SQlite** : |
| |
=== Commandes SQLite === | === Lister les commandes === |
| |
== Lister les commandes == | |
| |
* **.help** : Lister les commandes :<cli prompt='> '>sqlite> .help | * **.help** : Lister les commandes :<cli prompt='> '>sqlite> .help |
</cli> | </cli> |
| |
== Quitter sqlite == | === Quitter sqlite === |
| |
* **.exit** : Quitter le programme sqlite | * **.exit** : Quitter le programme sqlite |
* **.quit** : Quitter le programme sqlite | * **.quit** : Quitter le programme sqlite |
| |
== Modifier le format de sortie == | === Modifier le format de sortie === |
| |
- **.mode MODE ?TABLE?** : Mode de sortie, MODE est à choisir parmi : | * **.mode MODE ?TABLE?** : Mode de sortie, MODE est à choisir parmi : |
- **csv** : valeurs séparées par des virgules | * **csv** : valeurs séparées par des virgules |
- **column** : colonnes alignées à gauche (voir .width) | * **column** : colonnes alignées à gauche (voir .width) |
- **.header(s) on|[__off__]** : Affiche (ou non) les titres. Par exemple, <cli prompt='> '>sqlite> .header on | * **html** : <table> (code HTML)<cli prompt='> '>sqlite> .mode html</cli>affichera :{{materiel:internet:serveur:sqlite-affichage-4.png|}} |
| * **insert** : commande SQL **insert** pour la table TABLE |
| * **line** : Une valeur par ligne |
| * **[__list__]** : Valeurs délimitées par la chaîne de séparation .separator |
| * **tabs** : valeurs séparées par des tabulations |
| * **tcl** : Liste TCL des éléments |
| |
| === Afficher le nom des colonnes / Changer l'aspect des colonnes (.mode column) === |
| |
| * **.header(s) on|[__off__]** : Affiche (ou non) les titres. Par exemple, <cli prompt='> '>sqlite> .header on |
sqlite> .mode column</cli>affichera les résultats comme ceci :{{materiel:internet:serveur:sqlite-affichage_tableau.png|}}L'affichage par défaut <cli prompt='> '>sqlite> .header off | sqlite> .mode column</cli>affichera les résultats comme ceci :{{materiel:internet:serveur:sqlite-affichage_tableau.png|}}L'affichage par défaut <cli prompt='> '>sqlite> .header off |
sqlite> .mode list</cli>affiche comme ceci :{{materiel:internet:serveur:sqlite-affichage-2.png|}} | sqlite> .mode list</cli>affiche comme ceci :{{materiel:internet:serveur:sqlite-affichage-2.png|}} |
- **.width NUM1 NUM2 ...** : largeur des colonnes [par défaut, 10 caractères]. Par exemple,<cli prompt='> '>sqlite> .width 2 15 10 20 3</cli>affichera:{{materiel:internet:serveur:sqlite-affichage-3.png|}} | * **.width NUM1 NUM2 ...** : largeur des colonnes [par défaut, 10 caractères]. Par exemple,<cli prompt='> '>sqlite> .width 2 15 10 20 3</cli>affichera:{{materiel:internet:serveur:sqlite-affichage-3.png|}} |
- **html** : <table> (code HTML)<cli prompt='> '>sqlite> .mode html</cli>affichera :{{materiel:internet:serveur:sqlite-affichage-4.png|}} | * **.separator STRING** : change le séparateur utilisé par le mode de sortie et par .import. En mode liste,<cli prompt='> '>sqlite> .separator ", "</cli>affichera :{{materiel:internet:serveur:sqlite-affichage-2.png|}} |
- **insert** : commande SQL **insert** pour la table TABLE | |
- **line** : Une valeur par ligne | === Rappel des paramètres === |
- **[__list__]** : Valeurs délimitées par la chaîne de séparation .separator | |
- **tabs** : valeurs séparées par des tabulations | * **.show** Affiche les valeurs actuelles des différents paramètres :<cli prompt='> '>sqlite> .show |
- **tcl** : Liste TCL des éléments | |
- **.separator STRING** : change le séparateur utilisé par le mode de sortie et par .import. En mode liste,<cli prompt='> '>sqlite> .separator ", "</cli>affichera :{{materiel:internet:serveur:sqlite-affichage-2.png|}} | |
- **.show** Affiche les valeurs actuelles des différents paramètres :<cli prompt='> '>sqlite> .show | |
echo: off | echo: off |
eqp: off | eqp: off |
width: | width: |
filename: :memory:</cli> | filename: :memory:</cli> |
- **.databases** : Liste les noms et les fichiers des bases de données associées | |
- **.tables ?TABLE?** : Liste les noms des tables dans la base courante. Si TABLE est spécifié, ne liste que les tables correspondant au motif TABLE. | === Gestion des bases === |
- **.import FILE TABLE** : Importer les données de FILE dans TABLE | |
- **.indices ?TABLE?** : Afficher les noms de tous les indices ; si TABLE est spécifiée, n'affiche que les indices correspondant au motif TABLE | * **.databases** : Liste les noms et les fichiers des bases de données associées |
- **.output FILENAME** : Envoyer la sortie vers FILENAME<cli prompt='> '>sqlite> .output bd.txt | * **.tables ?TABLE?** : Liste les noms des tables dans la base courante. Si TABLE est spécifié, ne liste que les tables correspondant au motif TABLE. |
| * **.import FILE TABLE** : Importer les données de FILE dans TABLE |
| * **.indices ?TABLE?** : Afficher les noms de tous les indices ; si TABLE est spécifiée, n'affiche que les indices correspondant au motif TABLE |
| * **.output FILENAME** : Envoyer la sortie vers FILENAME<cli prompt='> '>sqlite> .output bd.txt |
sqlite> select * from bd; | sqlite> select * from bd; |
sqlite> cat bd.txt | sqlite> cat bd.txt |
sqlite> .quit</cli> | sqlite> .quit</cli> |
- **.output stdout** : Envoyer la sortie vers l'écran | * **.output stdout** : Envoyer la sortie vers l'écran |
- **.dump ?TABLE? ...** : Dump de la base de données dans un format texte SQL. Si TABLE est spécifié, ne dumpe que les tables correspondant au motif TABLE<cli prompt='> '>sqlite> .dump bd</cli>{{materiel:internet:serveur:sqlite-10.png|}} | |
- Rediriger la sortie vers un fichier puis dumper la table depuis SQLite<cli prompt='> '>sqlite> .output bd.sql | === Dumper une table depuis SQLite en format SQL pour sauvegarder la structure et les données sur un disque === |
| |
| * **.dump ?TABLE? ...** : Dump de la base de données dans un format texte SQL. Si TABLE est spécifié, ne dumpe que les tables correspondant au motif TABLE<cli prompt='> '>sqlite> .dump bd</cli>{{materiel:internet:serveur:sqlite-10.png|}} |
| * Rediriger la sortie vers un fichier puis dumper la table depuis SQLite<cli prompt='> '>sqlite> .output bd.sql |
sqlite> .dump bd</cli>Le résultat n'est plus affiché dans le terminal, mais redirigé vers le fichier bd.sql. Pour le vérifier il suffit d'afficher le contenu du fichier:<cli prompt='> '>sqlite> .quit | sqlite> .dump bd</cli>Le résultat n'est plus affiché dans le terminal, mais redirigé vers le fichier bd.sql. Pour le vérifier il suffit d'afficher le contenu du fichier:<cli prompt='> '>sqlite> .quit |
<cli prompt='$ '>...@...:~ $ cat bd.sql</cli></cli> | <cli prompt='$ '>...@...:~ $ cat bd.sql</cli></cli> |
- Lire directement un fichier dumpé depuis sqlite : | * Lire directement un fichier dumpé depuis sqlite : |
- Effacez la table de la base:<cli prompt='> '>sqlite> drop table bd;</cli> | * Effacez la table de la base:<cli prompt='> '>sqlite> drop table bd;</cli> |
- Puis lisez le fichier sauvegardé:<cli prompt='> '>sqlite> .read bd.sql | * Puis lisez le fichier sauvegardé:<cli prompt='> '>sqlite> .read bd.sql |
sqlite> select * from bd;</cli>Affichera:{{materiel:internet:serveur:sqlite-11.png|}} | sqlite> select * from bd;</cli>Affichera:{{materiel:internet:serveur:sqlite-11.png|}} |
- Dumper une base en format SQL pour sauvegarder sa structure, ses tables et ses données :<cli prompt='$ '>...:...$ sqlite3 livres.db .dump > livres.sql</cli> | * Dumper une base en format SQL pour sauvegarder sa structure, ses tables et ses données :<cli prompt='$ '>...:...$ sqlite3 livres.db .dump > livres.sql</cli> |
- Récupérer un fichier dumpé pour recréer la base : | * Récupérer un fichier dumpé pour recréer la base : |
- Effacez la base originale :<cli prompt='$ '>...@...:~ $ rm -r livres.db</cli> | * Effacez la base originale :<cli prompt='$ '>...@...:~ $ rm -r livres.db</cli> |
- Récupérez la base depuis le fichier de svg :<cli prompt='$ '>...@...:~ $ sqlite3 livres.db < livres.sql</cli> | * Récupérez la base depuis le fichier de svg :<cli prompt='$ '>...@...:~ $ sqlite3 livres.db < livres.sql</cli> |
- Connectez-vous à la base< :<cli prompt='$ '>...@...:~ $ sqlite3 livres.db</cli> | * Connectez-vous à la base< :<cli prompt='$ '>...@...:~ $ sqlite3 livres.db</cli> |
- Faites un requête pour vérification :<cli prompt='$ '>sqlite> select * from bd;</cli>Affichera:{{materiel:internet:serveur:sqlite-12.png|}} | * Faites un requête pour vérification :<cli prompt='$ '>sqlite> select * from bd;</cli>Affichera:{{materiel:internet:serveur:sqlite-12.png|}} |
</subnumberlist> | |
| |
=== Manipuler une base === | === Manipuler une base === |
=== Autres commandes === | === Autres commandes === |
| |
? .backup ?DB? FILE | * **.backup ?DB? FILE** : Sauvegarde DB (par défaut "main") vers FILE |
: Sauvegarde DB (par défaut "main") vers FILE | * **.bail ON|[__OFF__]** : Stop après une erreur |
? .bail ON|[__OFF__] | * **.echo ON|OFF** : Bascule la commande d'écho ON/OFF |
: Stop après une erreur | * **.explain ?ON|OFF?** : Bascule le mode de sortie approprié pour EXPLIQUER on or off\\ Sans argument, on |
? .echo ON|OFF | * **.load FILE ?ENTRY?** : Charger une bibliothèque d'extension |
: Bascule la commande d'écho ON/OFF | * **.log FILE|off** : Activer ou désactiver la journalisation. FILE peut être stderr/stdout |
? .explain ?ON|OFF? | * **.nullvalue STRING** : Imprime STRING à la place des valeurs NULL |
: Bascule le mode de sortie approprié pour EXPLIQUER on or off | * **.prompt MAIN CONTINUE** : Remplace les prompts standards |
: Sans argument, on | * **.read FILENAME** : Exécuter SQL dans FILENAME |
? .load FILE ?ENTRY? | * **.restore ?DB? FILE** : Restaurer le contenu de la DB (par défaut "main") à partir de FILE |
: Charger une bibliothèque d'extension | * **.schema ?TABLE?** : Afficher les déclarations CREATE. Si TABLE est spécifié, ne montrer que les tables correspondant au motif TABLE |
? .log FILE|off | * **.stats ON|OFF** : Active ou désactive les stats |
: Activer ou désactiver la journalisation. FILE peut être stderr/stdout | * **.timeout MS** : Essayer d'ouvrir les tables verrouillées durant MS millisecondes |
? .nullvalue STRING | * **.trace FILE|off** : afficher chaque instruction SQL au moment de son exécution |
: Imprime STRING à la place des valeurs NULL | * **.vfsname ?AUX?** : afficher le nom de la pile VFS |
? .prompt MAIN CONTINUE | * **.timer ON|OFF** : activer ou désactiver la minuterie du CPU |
: Remplace les prompts standards ? .read FILENAME | |
: Exécuter SQL dans FILENAME | |
? .restore ?DB? FILE | |
: Restaurer le contenu de la DB (par défaut "main") à partir de FILE | |
? .schema ?TABLE? | |
: Afficher les déclarations CREATE | |
: Si TABLE est spécifié, ne montrer que les tables correspondant au motif TABLE | |
? .stats ON|OFF | |
: Active ou désactive les stats | |
? .timeout MS | |
: Essayer d'ouvrir les tables verrouillées durant MS millisecondes | |
? .trace FILE|off | |
: afficher chaque instruction SQL au moment de son exécution | |
? .vfsname ?AUX? | |
: afficher le nom de la pile VFS | |
? .timer ON|OFF | |
: activer ou désactiver la minuterie du CPU | |
| |
===== Désinstallation ===== | ===== Désinstallation ===== |