You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
931 B
JavaScript

const fs = require('fs')
const path = require('path')
const sqlite3 = require('sqlite3').verbose()
const dbPath = path.join(__dirname, '..', 'data', 'bricoloc.db')
const schemaPath = path.join(__dirname, '..', 'data', 'seeds', 'schema.sql')
// Supprimer la base existante si elle existe
if (fs.existsSync(dbPath)) {
fs.unlinkSync(dbPath)
console.log('Base de données existante supprimée')
}
// Créer une nouvelle base
const db = new sqlite3.Database(dbPath, (err) => {
if (err) {
console.error('Erreur de création de la base:', err.message)
process.exit(1)
}
console.log('Base de données créée')
})
// Lire et exécuter le schéma
const schema = fs.readFileSync(schemaPath, 'utf8')
db.exec(schema, (err) => {
if (err) {
console.error('Erreur lors de la création du schéma:', err.message)
process.exit(1)
}
console.log('Schéma de base de données créé avec succès')
db.close()
})