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

Bases de données Discussion :

Gérer les associations


Sujet :

Bases de données

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 61
    Points : 96
    Points
    96
    Par défaut Gérer les associations
    Bonjour,
    étant novice en programmation, je me heurte à un petit problème d'organisation. Je ne sais pas quelle est la meilleure solution pour faire face à mon problème.
    J'utilise un exemple afin de montrer de façon simple un cas qui me pose problème:
    une class Film possède des attributs titre, titre original, date de sortie, synopsis etc ... cependant un film possède aussi des acteurs. Ces acteurs sont des personnes, j'ai donc crée une classe Personne. J'aurais pus prendre la solution simple qui consiste à ce que chaque film charge lui-même ses propres acteurs dans une liste, cependant j'ai pour cela mis en place les QSharedPointer afin de pouvoir partager mes pointeurs d'objets dans toute l'application. Et je souhaite qu'un film puisse afficher ses acteurs, mais qu'un acteur puisse aussi afficher les films dans lequel il a joué. J'avais pensé pour cela à une sorte de gestionnaire qui s'occuperait de mettre en relation tous les objets, cependant cela implique de passer par lui pour chaque ajout de relations entre objet, ce qui est assez lourd à gérer.

    J'aimerais donc savoir comment vous vous faites pour organiser ces associations, et quelle solution est la plus viable pour un projet qui sera assez gros en terme de gestion de données et où chaque donnée pourra être lié à une autre.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2007
    Messages : 159
    Points : 119
    Points
    119
    Par défaut
    Bonjour,

    Ton problème est très vague.
    QT t'offre la possibilité de gérer ce genre de complexité très facilement, en passant par l'usage d'une base de données. Personnellement j'ai un projet dans lequel il y a un certain nombre (je dirais une trentaine) de relations de ce type, et ca se passe très bien.
    Pour cela, utilise les fonctionnalités QTsql (outils de gestion de base de données) et les concepts Modele/Vue de QT.
    Comme je ne suis pas très bon pour réinventer la poudre, je te renvoie 1) à la documentation de QT (ici), plutot bien faite, ainsi qu'aux tutoriaux de ce site ().
    J'ai volontairement choisi les liens les plus généraux, il te suffira de choisir la rubrique qui t'intéresse (SQL et liés).
    Par contre, si ce n'est pas encore fait, il sera temps de choisir une base de données pour stocker tout cela. Pour cela je ne suis pas compétent pour orienter ton choix. Pour essayer, le plus simple est d'utiliser SQLite, qui est inclus par défaut dans QT.
    Voila. Espérant avoir pu t'aider, même après tant de temps

    A bientôt
    M.P.

Discussions similaires

  1. [D5][SQL Server] Conserver des images dans la BDD
    Par FONKOU dans le forum Bases de données
    Réponses: 8
    Dernier message: 08/06/2008, 19h58
  2. Réponses: 1
    Dernier message: 15/05/2008, 14h10
  3. Gérer les clics sur les boutons
    Par cyberlewis dans le forum Windows
    Réponses: 4
    Dernier message: 08/02/2004, 15h34
  4. Comment gérer les espaces blancs?
    Par Lambo dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 16/05/2003, 09h44
  5. gérer les jpg dans une fenetre directdraw???
    Par Anonymous dans le forum DirectX
    Réponses: 1
    Dernier message: 14/06/2002, 13h39

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