Mise en place de la base de données

  1. Installez la base de données SQLite sur votre serveur :

    npm install sqlite3

    La documentation concernant sqlite se trouve ici

  2. Dans le répertoire db, créez un fichier persons.sql dans lequel, vous écrivez :

    • la commande de création de la table persons comprenant une colonne id et une colonne name.
    • une commande d’insertion de quelques lignes dans cette table.
  3. Depuis le répertoire server/db, la ligne de commande suivante devrait permettre de créer votre base de données :

    sqlite3 -init persons.sql persons .exit
  4. Créez un fichier routerV110.sql et créez une version 1.1.0 de votre serveur qui l’utilise.

  5. Dans routerV110.js, établissez la connexion à la base persons :

    const sqlite3 = require('sqlite3').verbose();
    const db = new sqlite3.Database('db/persons');

Gestion des données sur le serveur

Ci-dessous, les entrées sur le serveur :

  1. Pour extraire le contenu de la table person, modifiez comme suit la route /persons :

    .get('/persons',
            (req, res) => {
                db.all(
                    "select * from person",
                    (err, rows) => res.json(rows)
                );
            })
  2. Pour extraire une personne unique :

    .get('/persons/:id',
        (req, res) => {
            db.get(
                "select * from person where id=?",
                req.params.id,
                (err, row) => {
                    res.json(row)
                }
            );
        })
  3. Pour insérer une nouvelle personne dans la table person:

    .post('/person',
        (req, res) => {
            db.run("insert into person(id,name) values(?,?)",[id, name]);
            res.redirect(303, '/persons');
        })

A faire

Il vous reste maintenant à adapter la nouvelle version de votre serveur de sorte que votre application puisse fonctionner normalement.