🧚 Écoute ! Beekeeper Studio est une interface de base de données rapide, moderne et open source Télécharger
21 octobre 2024 Par Matthew Rathbone

Outils basés sur SQL

1. Beekeeper Studio

Beekeeper Studio est un éditeur SQL et gestionnaire de bases de données open source qui offre une interface simple mais puissante pour interroger des bases de données SQL. Il prend en charge de nombreuses bases comme MySQL, PostgreSQL, SQLite et d’autres.

Exemple de requête : récupérer les données des employés

Voici comment utiliser Beekeeper Studio pour interroger une base de données PostgreSQL sur les données des employés :

SELECT employee_id, first_name, last_name, department
FROM employees
WHERE department = 'Engineering'
ORDER BY last_name;

Résultat attendu :

employee_id first_name last_name department
103 Jane Doe Engineering
105 John Smith Engineering
110 Alice Johnson Engineering

Cette requête SQL sélectionne les informations des employés dans la table employees dont le champ department vaut « Engineering » et trie les résultats par last_name.

2. DBeaver

DBeaver est un outil universel de gestion de bases de données qui prend en charge un large éventail de bases, SQL comme NoSQL. S’il te paraît trop lourd, consulte nos alternatives à DBeaver ou la comparaison Beekeeper Studio vs DBeaver. Il propose un éditeur SQL complet avec autocomplétion, coloration syntaxique et historique d’exécution.

Exemple de requête : agréger les données de ventes

Avec DBeaver connecté à une base de données MySQL, tu peux exécuter des fonctions d’agrégation comme celle-ci :

SELECT product_id, SUM(quantity) AS total_quantity, SUM(price * quantity) AS total_sales
FROM sales
GROUP BY product_id
ORDER BY total_sales DESC;

Résultat attendu :

product_id total_quantity total_sales
P1001 500 7500.00
P1005 320 6400.00
P1003 250 5000.00

Cette requête agrège les données de ventes par product_id, en calculant la quantité totale vendue et le montant total des ventes. Les résultats sont triés par total_sales par ordre décroissant.

3. SQL Workbench/J

SQL Workbench/J est un outil de requêtage SQL gratuit et multiplateforme, compatible avec la plupart des bases de données SQL. Il offre de nombreuses fonctionnalités d’édition de scripts SQL, de gestion des jeux de résultats et d’export.

Exemple de requête : mettre à jour les informations produit

Un exemple d’utilisation de SQL Workbench/J pour mettre à jour une table dans une base de données PostgreSQL :

UPDATE products
SET price = price * 1.10
WHERE category = 'Electronics';

Résultat attendu :

Query OK, 5 rows affected

Cette requête modifie la table products en appliquant une hausse de prix de 10 % aux articles de la catégorie « Electronics » grâce à l’instruction UPDATE.

Outils de requêtage NoSQL

1. MongoDB Compass

MongoDB Compass est une interface graphique pour MongoDB qui te permet d’explorer tes données et d’interagir avec elles sans écrire beaucoup de code. Il offre un environnement visuel pour les requêtes MongoDB.

Exemple de requête : filtrer des documents

Utiliser MongoDB Compass pour trouver des documents dans une collection customers :

{
  "age": { "$gt": 30 },
  "subscription_status": "active"
}

Résultat attendu

[
  {
    "_id": "60b8d75d8e3f4a6c4e000001",
    "name": "Alice Johnson",
    "age": 35,
    "subscription_status": "active"
  },
  {
    "_id": "60b8d75d8e3f4a6c4e000002",
    "name": "Bob Smith",
    "age": 45,
    "subscription_status": "active"
  }
]

Cette requête filtre les documents de la collection customers dont age est supérieur à 30 et dont subscription_status vaut « active ».

2. Couchbase Query Workbench

Couchbase Query Workbench fournit une interface pour exécuter des requêtes N1QL (proches de SQL) sur des données Couchbase. Il est conçu pour manipuler des documents JSON à la manière de SQL.

Exemple de requête : sélectionner des champs imbriqués

SELECT name, address.city
FROM customers
WHERE address.state = 'CA';

Résultat attendu :

name city
Alice Johnson San Diego
Bob Smith Los Angeles

Cette requête N1QL sélectionne name et le champ imbriqué city de l’objet address dans les documents customers dont state vaut « CA ».

API et générateurs de requêtes

1. GraphQL

GraphQL est un langage de requête d’API qui permet de demander des données de manière flexible. Il permet aux clients de demander des champs précis au serveur.

Exemple de requête : récupérer des données imbriquées

{
  employee(id: "103") {
    firstName
    lastName
    department {
      name
      location
    }
  }
}

Résultat attendu :

{
  "data": {
    "employee": {
      "firstName": "Jane",
      "lastName": "Doe",
      "department": {
        "name": "Engineering",
        "location": "New York"
      }
    }
  }
}

Cette requête GraphQL demande des champs précis (firstName, lastName, department.name et department.location) pour l’employé avec id: 103.

2. ORM (Object-Relational Mappers)

Les ORM comme Active Record (pour Ruby on Rails), Sequelize (pour Node.js) et Django ORM (pour Python) permettent d’interroger des bases de données avec du code plutôt qu’en SQL brut. C’est pratique pour intégrer des requêtes directement dans une application.

Exemple de requête : utiliser Sequelize avec Node.js

const employees = await Employee.findAll({
  where: {
    department: 'Engineering'
  },
  order: [['lastName', 'ASC']]
});

Résultat attendu :

Un tableau d’objets JavaScript représentant les employés du département « Engineering » :

[
  { "employee_id": 103, "first_name": "Jane", "last_name": "Doe", "department": "Engineering" },
  { "employee_id": 105, "first_name": "John", "last_name": "Smith", "department": "Engineering" }
]

L’ORM convertit automatiquement le code JavaScript en une requête SQL qui récupère et trie les données des employés depuis la base de données.

Conclusion

Chaque outil de requêtage de données répond à des besoins différents selon le type de base de données (SQL ou NoSQL) et les besoins précis de l’utilisateur. Les outils SQL comme Beekeeper Studio, DBeaver et SQL Workbench/J excellent dans la gestion des données structurées. Les outils NoSQL comme MongoDB Compass et Couchbase Query Workbench offrent de la flexibilité pour interroger des données non structurées. Les API comme GraphQL et les ORM proposent des moyens programmatiques d’interagir avec les bases de données dans les applications modernes.

Beekeeper Studio est une interface de base de données gratuite & open source

Le meilleur outil de requêtes & éditeur SQL que j’aie jamais utilisé. Il m’offre tout ce dont j’ai besoin pour gérer ma base de données. - ⭐⭐⭐⭐⭐ Mit

Beekeeper Studio est rapide, intuitif et facile à utiliser. Beekeeper prend en charge plein de bases de données et fonctionne parfaitement sous Windows, Mac et Linux.

La version Linux de Beekeeper est 100% complète : rien de bâclé, aucun compromis sur les fonctionnalités.

Ce que les utilisateurs disent de Beekeeper Studio

★★★★★
« Beekeeper Studio a complètement remplacé mon ancien workflow SQL. C’est rapide, intuitif, et ça rend le travail sur les bases de données à nouveau agréable. »
— Alex K., développeur de bases de données
★★★★★
« J’ai essayé beaucoup d’interfaces de bases de données, mais Beekeeper trouve l’équilibre parfait entre fonctionnalités et simplicité. Ça marche, tout simplement. »
— Sarah M., ingénieure full stack