diff --git a/db/database.db b/db/database.db new file mode 100644 index 0000000..b1adfb6 Binary files /dev/null and b/db/database.db differ diff --git a/package.json b/package.json index 2a045ad..182ea77 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "scripts": { "build": "tsc", "start": "tsx src/server.ts", - "mamanColin": "tsx src/database.ts" + "dbb": "tsx src/database.ts" }, "devDependencies": { "@types/bun": "^1.0.4", diff --git a/src/database.ts b/src/database.ts index 8b42b8e..d4b3eb7 100644 --- a/src/database.ts +++ b/src/database.ts @@ -1,57 +1,65 @@ import sqlite3 from "sqlite3"; +import fs from "fs"; +const dbDirectory = "./db"; +const dbFilePath = `${dbDirectory}/database.db`; +// Créer le répertoire db s'il n'existe pas +if (!fs.existsSync(dbDirectory)) { + fs.mkdirSync(dbDirectory); +} + +// Ouverture de la base de données let db = new sqlite3.Database( - "./db/database.db", - sqlite3.OPEN_READWRITE, + dbFilePath, + sqlite3.OPEN_READWRITE | sqlite3.OPEN_CREATE, (err: Error | null) => { if (err) console.error(err.message); } ); -db.close((err) => { +// Création de la table registered_user dans la base de données + +const tableRegisteredUser = `CREATE TABLE IF NOT EXISTS registered_user (id_user INTEGER PRIMARY KEY AUTOINCREMENT, login TEXT NOT NULL, password TEXT NOT NULL, permissions INTEGER NOT NULL, UNIQUE (login))`; + +// Exécution de la requête pour créer la table +db.run(tableRegisteredUser, [], function (err) { if (err) { - console.error(err.message); + return console.error(err.message); } - console.log("Close the database connection."); + console.log("Table créée avec succès"); }); -// // Création de la table registered_user dans la base de données +// Insertion d'un utilisateur dans la table registered_user -// const tableRegisteredUser = `CREATE TABLE IF NOT EXISTS registered_user (id_user INTEGER PRIMARY KEY AUTOINCREMENT, login TEXT NOT NULL, password TEXT NOT NULL, permissions INTEGER NOT NULL, UNIQUE (login))`; +const insertUser = `INSERT INTO registered_user (login, password, permissions) VALUES ('admin', 'admin', 1)`; -// // Exécution de la requête pour créer la table -// db.run(tableRegisteredUser, [], function (err) { -// if (err) { -// return console.error(err.message); -// } -// console.log("Table créée avec succès"); -// }); - -// // Insertion d'un utilisateur dans la table registered_user - -// const insertUser = `INSERT INTO registered_user (login, password, permissions) VALUES ('admin', 'admin', 1)`; - -// // Exécution de la requête pour insérer un utilisateur -// db.run(insertUser, [], function (err) { -// if (err) { -// return console.error(err.message); -// } -// console.log(`Utilisateur inséré avec succès`); -// }); +// Exécution de la requête pour insérer un utilisateur +db.run(insertUser, [], function (err) { + if (err) { + return console.error(err.message); + } + console.log(`Utilisateur inséré avec succès`); +}); -// // SELECT de tous les utilisateurs de la table registered_user +// SELECT de tous les utilisateurs de la table registered_user -// const selectAllUsers = `SELECT * FROM registered_user`; +const selectAllUsers = `SELECT * FROM registered_user`; -// // Exécution de la requête pour sélectionner tous les utilisateurs +// Exécution de la requête pour sélectionner tous les utilisateurs -// db.all(selectAllUsers, [], (err, rows) => { -// if (err) { -// throw err; -// } -// rows.forEach((row) => { -// console.log(row); -// }); -// }); +db.all(selectAllUsers, [], (err, rows) => { + if (err) { + throw err; + } + rows.forEach((row) => { + console.log(row); + }); +}); -// db.close(); +// Fermeture de la base de données +db.close((err) => { + if (err) { + console.error(err.message); + } + console.log("Close the database connection."); +});