Documentation du Dr FRAPPE

Ce wiki regroupe les résultats de mes expériences en informatique accumulés au cours de mes recherches sur le net.

Dans la mesure du possible, j'ai cité mes sources ; il en manque certainement… :-)

Ceci est une ancienne révision du document !


SQLite : une base de données SQL

Pré-requis

Installation

  1. Installez le paquet sqlite3 ou en ligne de commande :

    ...@...:~$ sudo apt install sqlite3

Configuration

Utilisation

Avec un client graphique : SQLiteManager

En ligne de commande

  1. Lancez dans un terminal :

    ...@...:~ $ sqlite3
    SQLite version 3.31.1 2020-01-27 19:55:54
    Enter ".help" for usage hints.
    Connected to a transient in-memory database.
    Use ".open FILENAME" to reopen on a persistent database.
    sqlite>

    Le prompt change et signale que vous êtes dans le terminal SQlite :

Commandes SQLite

  1. .help : Lister les commandes :

    sqlite> .help
    .archive ...             Manage SQL archives

  2. .exit / .quit : Quitter le programme sqlite
  3. .mode MODE ?TABLE? : Mode de sortie, MODE est à choisir parmi :
    1. csv : valeurs séparées par des virgules
    2. column : colonnes alignées à gauche (voir .width)
      1. .header(s) on|[off] : Affiche (ou non) les titres. Par exemple,

        sqlite> .header on
        sqlite> .mode column

        affichera les résultats comme ceci :L'affichage par défaut

        sqlite> .header off
        sqlite> .mode list

        affiche comme ceci :

      2. .width NUM1 NUM2 … : largeur des colonnes [par défaut, 10 caractères]. Par exemple,

        sqlite> .width 2 15 10 20 3

        affichera:

    3. html : <table> (code HTML)

      sqlite> .mode html

      affichera :

    4. insert : commande SQL insert pour la table TABLE
    5. line : Une valeur par ligne
    6. [list] : Valeurs délimitées par la chaîne de séparation .separator
    7. tabs : valeurs séparées par des tabulations
    8. tcl : Liste TCL des éléments
  4. .separator STRING : change le séparateur utilisé par le mode de sortie et par .import. En mode liste,

    sqlite> .separator ", "

    affichera :

  5. .show Affiche les valeurs actuelles des différents paramètres :

    sqlite> .show
            echo: off
             eqp: off
         explain: auto
         headers: off
            mode: html
       nullvalue: ""
          output: stdout
    colseparator: "|"
    rowseparator: "\n"
           stats: off
           width: 
        filename: :memory:

  6. .databases : Liste les noms et les fichiers des bases de données associées
  7. .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.
  8. .import FILE TABLE : Importer les données de FILE dans TABLE
  9. .indices ?TABLE? : Afficher les noms de tous les indices ; si TABLE est spécifiée, n'affiche que les indices correspondant au motif TABLE
  10. .output FILENAME : Envoyer la sortie vers FILENAME

    sqlite> .output bd.txt
    sqlite> select * from bd;
    sqlite> cat bd.txt
    sqlite> .quit

  11. .output stdout : Envoyer la sortie vers l'écran
  12. .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

    sqlite> .dump bd

    1. Rediriger la sortie vers un fichier puis dumper la table depuis SQLite

      sqlite> .output bd.sql
      sqlite> .dump bd

      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:

      sqlite> .quit
      ...@...:~ $ cat bd.sql

    2. Lire directement un fichier dumpé depuis sqlite :
      1. Effacez la table de la base:

        sqlite> drop table bd;

      2. Puis lisez le fichier sauvegardé:

        sqlite> .read bd.sql
        sqlite> select * from bd;

        Affichera:

    3. Dumper une base en format SQL pour sauvegarder sa structure, ses tables et ses données :

      ...:...$ sqlite3 livres.db .dump > livres.sql

    4. Récupérer un fichier dumpé pour recréer la base :
      1. Effacez la base originale :

        ...@...:~ $ rm -r livres.db

      2. Récupérez la base depuis le fichier de svg :

        ...@...:~ $ sqlite3 livres.db < livres.sql

      3. Connectez-vous à la base< :

        ...@...:~ $ sqlite3 livres.db

      4. Faites un requête pour vérification :

        sqlite> select * from bd;

        Affichera:

Désinstallation

Voir aussi


Basé sur « Article » par Auteur.