IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques Discussion :

Base de données en c++


Sujet :

Bibliothèques

  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut Base de données en c++
    Bonjour à tous,

    Je voudrais utiliser un SGBDR pour le développement d'un logiciel de gestion, mais pas un truc comme oracle, sql serveur (pas d'installation de serveur, pas super gros moteurs SQL de 300mo, etc...).

    En fait actuellement, on sauvegarde nos données en xml. Mais ça devient vite chiant d'aller chercher les infos, parser les fichiers etc... (ils sont assez gros), et en plus il faut en crypter certains qui sauvegardent des données que l'utilisateur ne dois pas voire. Bref y'a pas mal d'inconvénient à utiliser le xml pour ce genre d'information à stocker.

    L'idéal serait de se connecter directement au fichier de base de donnée comme on ouvre actuellement le fichier xml, et de l'éditer à travers une librarie au moyen d'sql, de la même manière qu'on utilise msxml actuellement. J'ai pas envi d'imposer au client d'installer un serveur, un p'tit fichier bdd suffit.

    Ha oui, dernière chose, on veux pas prendre de microsoft.

    Voilà

    Merci

    A bientôt
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  2. #2
    Membre éprouvé Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Points : 1 122
    Points
    1 122
    Par défaut
    Le sgbd MySql semble tout indiquer.

    Il est utilisable via une dll, la dernière version supporte même une version "embarquée" qui évite d'installer (je n'en suis pas là) mysql.

    Je l'utilise plus avec Delphi, et il répond parfaitement à mes besoins.

    Cependant, tu ne pourras éviter que la taille de la base grandisse avec le volume de donnée insérée.

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    Oui biensur y'a pas de soucis pour le volume des données.

    Mais c'est histoire d'avoir un seul fichier de donnée (là on a 50 xml partout), de pouvoir accéder rapidement et simplement à des infos sélectionnées par un système de requête complet (xpath c'est limité), tout ça grace juste à une tite dll

    Bon je vais me renseigner sur MySQL, le compiler ce week end et tester un peu.

    Merci beaucoup

    A bientôt
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    J'ai fait un tour sur mysql.com, mais c'est l'bordel, je sais pas quoi télécharger.

    Aussi, j'ai vu le tuto "Utilisation de l'API mySQL avec Borland C++ Builder Par LFE", et lui il l'utilise pour se connecter à un serveur MySQL, mais rassure moi, on peut l'utiliser pour se connecter à un fichier hein?

    Merci

    A bientôt
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  5. #5
    Membre éprouvé Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Points : 1 122
    Points
    1 122
    Par défaut
    Je ne suis plus sûr d'avoir cerner ton problème.

    Il s'agit bien de centraliser les données exploitées jusque là avec des fichiers XML dans une base de donnée?

    La problématique étant le choix de la base et non pas la faisabilité?

    Il est possible depuis la version 5 de n'utiliser que la DLL, mais je n'ai pas tester cette fonctionnalité.

    Dans le cadre de mon dev perso, j'ai installé MySql.

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    Oui oui tu as bien compris la problématique, je savais pas que MySQL pouvait être utilisé sans serveur, c'est pour ça que j'ai posté ce sujet

    Bon je vais essayer de faire un p'tit truc ce week end avec ça

    Merci beaucoup

    A bientôt
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  7. #7
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 750
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 750
    Points : 10 667
    Points
    10 667
    Billets dans le blog
    3
    Par défaut
    Tu devrais jeter un oeil à SQLite.

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    J'en ai parlé a mon chef de projet, il me dit que MySQL il faut le payer si c'est pour un usage commercial... C'est vrai ce mensonge?

    Merci

    A bientôt
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  9. #9
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    Ha ouais ça sent bon ça SQLite.

    Je note, je note.

    Merci
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  10. #10
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    et en plus il faut en crypter certains qui sauvegardent des données que l'utilisateur ne dois pas voire.
    Utiliser un SGBD ne changera rien à cela.

    En tous cas, SQLite me semble correspondre aux besoins.
    Boost ftw

  11. #11
    Membre éprouvé Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Points : 1 122
    Points
    1 122
    Par défaut
    Oui, il faut payer une licence, ceci dit comparé à Oracle ou même Acces, je pense que c'est plus léger.

    Je ne connait pas SQLite. C'est gratuit même pour une application commerciale? On peut l'utiliser via une DLL?

    Citation Envoyé par mister3957
    J'en ai parlé a mon chef de projet, il me dit que MySQL il faut le payer si c'est pour un usage commercial... C'est vrai ce mensonge?

    Merci

    A bientôt

  12. #12
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    Je sais pas si il est gratuit, ni comment il s'utilise, j'verrai ça demain.

    Mais de toute façon une fois utilisé et validé par mon boss de son avantage, il mettra le prix.

    Au pire j'peux faire un système de lecture de sources avec différents type, comme ça on branche ce qu'on veut dessus et puis si ça lui plait pas, on le débranche et on laisse le xml et puis on l'garde au cas ou...

    Si quelqu'un a des infos sur SQLite (j'ai la flemme de lire la doc maintenant), on est preneur

    Merci
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  13. #13
    Membre éclairé
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2004
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2004
    Messages : 644
    Points : 785
    Points
    785
    Par défaut
    C'est la version Pro de MySQL qui demande une licence, faut pas se tromper.

    Concernant SQLite, il suffit de lire la doc et ça va très vite.

    Un bête fichier contient toute une base de données, mais il faut savoir que c'est via un système de lock file que se fait les accès concurrents.
    Nul ne peut mieux connaitre la connaissance qu'elle-même.

  14. #14
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    Ha... Et quel est la différence entre la version pro et la normale pour MySQL?

    Et pour SQLite, le lock file c'est un truc qu'on bloque le fichier pour effectuer des opérations dessus et que si quelqu'un derrière veut y accéder il attend? C'est a nous de le gérer avec des boucles ou bien on appelle une fonction bêtement et c'est elle qui temporise le temps que le fichier se libère?

    J'lirai la doc de A à Z mais pas ce soir :p

    A bientôt
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 14
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par mister3957
    Ha... Et quel est la différence entre la version pro et la normale pour MySQL?
    libmysql :
    - en GPL pour la version normale (avec tout ce que ca implique pour la licence du code qui l'utilise).
    - en Licence Mysql AB pour la version pro (qui permet de linker avec un code proprio).

    Le serveur MySQL Pro est un peu plus fiabilisé (comprendre : plus vieux) que la version normale.

    T'as aussi une possibilité d'assistance technique dans la version pro (suivant le contrat choisi).

    Amuse toi bien ...

  16. #16
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    Merci pour ces info.

    Si je l'utilise, c'est juste pour le module embarqué, donc pas de serveur.

    J'en parle demain à mon chef.

    Merci beaucoup

    A bientôt
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  17. #17
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    SQLite est du domaine public. On peut donc l'utiliser dans n'importe quelle application.
    Et ça correspond bien mieux à ton besoin que MySQL.
    Boost ftw

  18. #18
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    va pour SQLite alors,

    Je termine l'IHM des paramètres et j'attaque le stockage des données.

    Merci beaucoup

    A bientôt

    Aurélien
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

Discussions similaires

  1. Problème Base de données et CRecordSet
    Par LE CHAKAL dans le forum MFC
    Réponses: 3
    Dernier message: 20/08/2002, 11h59
  2. connexion base de donné
    Par saidi dans le forum MFC
    Réponses: 3
    Dernier message: 07/08/2002, 22h22
  3. [Concept] Stabilité d'une base de donnée
    Par lassmust dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 03/07/2002, 16h16
  4. Bases de données
    Par dev dans le forum C++Builder
    Réponses: 4
    Dernier message: 01/07/2002, 22h55
  5. associer une base de données(access) a un dbgrid
    Par ange1708 dans le forum MFC
    Réponses: 3
    Dernier message: 11/06/2002, 12h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo