Skip to content

Action CRUD avec Sequelize et SQLite

Create (Créer)

Pour créer un nouvel enregistrement dans votre base de données, utilisez la méthode create de Sequelize. Voici comment vous pouvez ajouter un nouvel utilisateur :

javascript
import User from './User.js'; // Assurez-vous d'importer votre modèle User

async function createUser(name, email) {
  try {
    const user = await User.create({ name, email });
    console.log('Utilisateur créé:', user);
  } catch (error) {
    console.error('Erreur de création:', error);
  }
}
import User from './User.js'; // Assurez-vous d'importer votre modèle User

async function createUser(name, email) {
  try {
    const user = await User.create({ name, email });
    console.log('Utilisateur créé:', user);
  } catch (error) {
    console.error('Erreur de création:', error);
  }
}

Read (Lire)

Pour lire des données, Sequelize offre plusieurs méthodes. Par exemple, findAll pour récupérer plusieurs enregistrements et findOne pour un enregistrement spécifique.

javascript
async function getAllUsers() {
  try {
    const users = await User.findAll();
    console.log('Tous les utilisateurs:', users);
  } catch (error) {
    console.error('Erreur de lecture:', error);
  }
}

async function getUserById(userId) {
  try {
    const user = await User.findOne({ where: { id: userId } });
    console.log('Utilisateur trouvé:', user);
  } catch (error) {
    console.error('Erreur de lecture:', error);
  }
}
async function getAllUsers() {
  try {
    const users = await User.findAll();
    console.log('Tous les utilisateurs:', users);
  } catch (error) {
    console.error('Erreur de lecture:', error);
  }
}

async function getUserById(userId) {
  try {
    const user = await User.findOne({ where: { id: userId } });
    console.log('Utilisateur trouvé:', user);
  } catch (error) {
    console.error('Erreur de lecture:', error);
  }
}

Update (Mettre à jour)

Pour mettre à jour un enregistrement, utilisez la méthode update :

javascript
async function updateUser(userId, newDetails) {
  try {
    const updated = await User.update(newDetails, { where: { id: userId } });
    if (updated) {
      console.log('Utilisateur mis à jour');
    }
  } catch (error) {
    console.error('Erreur de mise à jour:', error);
  }
}
async function updateUser(userId, newDetails) {
  try {
    const updated = await User.update(newDetails, { where: { id: userId } });
    if (updated) {
      console.log('Utilisateur mis à jour');
    }
  } catch (error) {
    console.error('Erreur de mise à jour:', error);
  }
}

Delete (Supprimer)

Enfin, pour supprimer un enregistrement, utilisez la méthode destroy :

javascript
async function deleteUser(userId) {
  try {
    const deleted = await User.destroy({ where: { id: userId } });
    if (deleted) {
      console.log('Utilisateur supprimé');
    }
  } catch (error) {
    console.error('Erreur de suppression:', error);
  }
}
async function deleteUser(userId) {
  try {
    const deleted = await User.destroy({ where: { id: userId } });
    if (deleted) {
      console.log('Utilisateur supprimé');
    }
  } catch (error) {
    console.error('Erreur de suppression:', error);
  }
}

Explication Simple :

  • Create (Créer) : Ajoutez de nouvelles données à votre base de données.
  • Read (Lire) : Récupérez des données existantes.
  • Update (Mettre à jour) : Modifiez les données existantes.
  • Delete (Supprimer) : Supprimez les données existantes.

Bonne Pratique

Utilisez des fonctions async/await pour gérer les opérations asynchrones. Cela rend votre code plus lisible et plus facile à gérer.

Sécurité

Lorsque vous mettez à jour ou supprimez des données, assurez-vous de bien identifier l'élément concerné pour éviter de modifier ou de supprimer des données par erreur.

Ces exemples donnent un aperçu de base des opérations CRUD avec Sequelize et SQLite. N'hésitez pas à les adapter en fonction des besoins de votre application.