Maison  >  Article  >  base de données  >  Comment utiliser MySQL et C++ pour développer un système de gestion de bibliothèque basé sur la ligne de commande

Comment utiliser MySQL et C++ pour développer un système de gestion de bibliothèque basé sur la ligne de commande

WBOY
WBOYoriginal
2023-09-20 13:48:21737parcourir

Comment utiliser MySQL et C++ pour développer un système de gestion de bibliothèque basé sur la ligne de commande

Comment utiliser MySQL et C++ pour développer un système de gestion de bibliothèque basé sur une ligne de commande

Résumé :
Dans cet article, nous présenterons comment utiliser MySQL et C++ pour développer un système de gestion de bibliothèque simple basé sur une ligne de commande. Nous couvrirons l'ensemble du processus, depuis la conception de la base de données jusqu'à l'implémentation du code C++, et fournirons des exemples de code spécifiques.

Introduction : 
Le système de gestion de livres est une application courante utilisée pour gérer des bibliothèques ou des collections de livres personnelles. En utilisant MySQL comme base de données et C++ comme langage de programmation, nous pouvons facilement mettre en œuvre un système de gestion de bibliothèque entièrement fonctionnel et fournir aux utilisateurs des fonctions pratiques de recherche, d'emprunt et de retour de livres.

Étape 1 : Conception de la base de données
Tout d'abord, nous devons concevoir un schéma de base de données approprié pour stocker les livres et les informations associées. Dans cet exemple, nous utiliserons le tableau suivant :

  • tablebooks : stocke des informations de base sur les livres, notamment l'identifiant du livre, le titre, l'auteur, la date de publication, etc.
  • table des utilisateurs : stocke les informations sur l'utilisateur, notamment l'ID utilisateur, le nom d'utilisateur, le mot de passe, etc.
  • tableau d'emprunts : stocke les enregistrements d'emprunt de livres, y compris l'identifiant d'emprunt, l'identifiant de livre, l'identifiant d'utilisateur, la date d'emprunt et la date de retour, etc.

Ce qui suit est un exemple de code MySQL pour créer une table :

CREATE TABLE books (
    book_id INT PRIMARY KEY,
    title VARCHAR(100),
    author VARCHAR(100),
    publication_date DATE
);

CREATE TABLE users (
    user_id INT PRIMARY KEY,
    username VARCHAR(100),
    password VARCHAR(100)
);

CREATE TABLE borrowings (
    borrowing_id INT PRIMARY KEY,
    book_id INT,
    user_id INT,
    borrowing_date DATE,
    return_date DATE,
    FOREIGN KEY (book_id) REFERENCES books(book_id),
    FOREIGN KEY (user_id) REFERENCES users(user_id)
);

Étape 2 : Implémentation du code C++
Ensuite, nous utiliserons C++ pour créer un lien vers la base de données MySQL et écrire du code pour implémenter diverses fonctions du système de gestion de bibliothèque.

Tout d'abord, nous devons inclure les fichiers d'en-tête C++ nécessaires :

#include <iostream>
#include <mysql.h>

Ensuite, nous devons créer une fonction connect pour nous connecter à la base de données MySQL : connect函数来连接到MySQL数据库:

MYSQL* connect() {
    MYSQL* conn;
    conn = mysql_init(NULL);
    if (conn == NULL) {
        std::cout << "Failed to initialize mysql client library" << std::endl;
        exit(1);
    }
    if (mysql_real_connect(conn, "localhost", "username", "password", "database_name", 0, NULL, 0) == NULL) {
        std::cout << "Failed to connect to database" << std::endl;
        exit(1);
    }
    return conn;
}

接下来,我们可以实现各种功能函数,例如添加图书、删除图书、借阅图书和归还图书等。以下是一个示例函数addBook

void addBook(MYSQL* conn, int book_id, std::string title, std::string author, std::string publication_date) {
    std::string query = "INSERT INTO books (book_id, title, author, publication_date) VALUES ("
                      + std::to_string(book_id) + ",'" + title + "','" + author + "','" + publication_date + "')";
    if (mysql_query(conn, query.c_str()) != 0) {
        std::cout << mysql_error(conn) << std::endl;
    }
}

Ensuite, nous pouvons implémenter diverses fonctionnalités fonctions, telles que l'ajout de livres, la suppression de livres, l'emprunt de livres, le retour de livres, etc. Voici un exemple de fonction addBook pour ajouter des livres à la base de données :

int main() {
    MYSQL* conn = connect();
    addBook(conn, 1, "C++ Primer", "Stanley B. Lippman", "1998-10-01");
    // ... 其他功能函数的调用

    mysql_close(conn);
    return 0;
}

Enfin, nous pouvons écrire une fonction principale pour tester diverses fonctions fonctionnelles :

rrreee
Résumé :

Grâce à cet article, nous avons appris comment Développer un système de gestion de bibliothèque basé sur la ligne de commande utilisant MySQL et C++. De la conception de la base de données à l'implémentation du code C++, nous couvrons l'ensemble du processus de développement et fournissons des exemples de code spécifiques. Avec cette base, nous pouvons étendre et améliorer davantage le système de gestion de bibliothèque pour répondre à nos propres besoins. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn