Auteur Sujet: Base de données Cours de rattrapage  (Lu 6916 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Base de données Cours de rattrapage
« le: novembre 12, 2014, 21:37:21 »
Bonsoir,

Je suis un cours au Cnam
http://dnf3.cnam.fr/offre2014/pdf/ueNFA008.pdf

J'ai pris le cours en cours de route ce vendredi, alors qu'il est commencé depuis le 06-10/14. J'ai donc du retard, et, franchement c'est pas glop.

Je dois récupérer ce retard avant dimanche cela serait bien.
Pour cela je cherche à mettre en place ce que l'on nomme:
  • Le modèle entité association,
  • Le modèle relationnel

Pour cet exo,

Club Vidéo
Dix magasins de location de cassettes vidéo se sont regroupés pour mettre en commun les cassettes dont ils disposent et ont fondé un club de location.
A la suite d'une rencontre avec les représentants de ce club, il ressort que chaque point de vente disposera d'un ordinateur personnel relié à un site central et qu'il faudra pouvoir prendre en compte les éléments suivants:
- un client qui s'inscrit au club verse une caution. Suivant le montant de cette caution il aura le droit d'emprunter en même temps de 1 à 6 cassettes;
- les cassettes empruntées doivent être retournées dans un délai de 3 jours dans n'importe quelle boutique du club;
- plusieurs cassettes peuvent contenir le même film;
- un film est rattaché à un genre cinématographique (défini par un nom et le type de public auquel il est destiné). Il est caractérisé par sa durée, son réalisateur et la liste des acteurs principaux;
- une location n'est permise que si le client est en règle (pas de dépassement du nombre d'emprunts maximum, pas de cassette en retard);
- la consultation d'un client permettra d'obtenir son nom, son adresse, son nombre d'emprunts en cours, la liste des numéros de cassettes et des titres qu'il a actuellement empruntés;
- la consultation d'un genre permettra d'obtenir la liste des films de ce genre disponibles dans un magasin donné;
- périodiquement, on veut obtenir la liste des retardataires; on veut pour chaque cassette non retournée à temps les informations suivantes : nom et adresse du client, date de l'emprunt, numéro(s) de cassette et titre du (des) film(s) concerné(s);
- on veut pouvoir connaître pour chaque cassette (identifiée par une numérotation commune aux dix magasins) où elle est, quand elle a été mise en service, quel film y est enregistré, combien de fois elle a déjà été louée, et quel est son état (de très bon à mauvais).


Ce que je demande, c'est de faire l'exo avec des légendes afin que je puisse acquérir au plus vite et au plus simple les méthodes de base.

Le but n'est pas la triche mais bien d'assimiler les emboitements et surtout la cardinalité.

Sachant que derrière ils parlent de UML et de Merise. C'est un gros morceau même si c'est vu en grande diagonale.

Merci par avance.

Labougie
I'll never give up

Security-X

Base de données Cours de rattrapage
« le: novembre 12, 2014, 21:37:21 »

Hors ligne xtrem47

  • TeamSX
  • Members
  • ***
  • Messages: 576
Base de données Cours de rattrapage
« Réponse #1 le: novembre 12, 2014, 22:05:02 »
Salut,

Tu as déjà des notions dans le domaine ? L'exercice n'est certes pas très complexe mais ça me parait dur à aborder comme ça. Tu n'as pas à ta disposition de petits exercices corrigés et commentés ?

Si ce n'est pas le cas tu peux regarder par exemple ici : http://nf17.crzt.fr/www/co/modules.html je trouve ça bien fait, tu suis les modules selon tes connaissances, ça se lit bien et en quelques heures tu pourras bien rattraper ton retard.

Je suis pas sûr que ce soit le mieux à faire de te donner une solution directement, en plus l'entité-association je connais à peine et je ne pourrais pas t'aider.

Bon courage et hésite pas si t'as une question :AAC




Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Re : Base de données Cours de rattrapage
« Réponse #2 le: novembre 12, 2014, 22:17:40 »
I'll never give up

Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Re : Base de données Cours de rattrapage
« Réponse #3 le: novembre 13, 2014, 00:38:44 »
Voici l'ébauche que j'ai réalisé ce matin.

Indique moi comment améliorer cette ébauche afin que je saisisse mieux les emboitements entre les Clés primaires et les clés secondaires.

Les clés primaires cela me semble je pense simple, en prenant le Num pour N° Id du client / N° du magasin loueur / N° de la cassette.
(" Les secondaires sont des clés qui font la jonction entre 2 tables ") si j'ai bien suivi les cours.
Par contre les clés étrangères, ben gloups gloups  :NNN

Pour la cardinalité, je verrais demain, car dons ton cours je viens de découvrir la lettre M que je n'ai pas vu dans les miens. Oups alors.

labougie
I'll never give up

Hors ligne xtrem47

  • TeamSX
  • Members
  • ***
  • Messages: 576
Base de données Cours de rattrapage
« Réponse #4 le: novembre 13, 2014, 13:51:57 »
Salut,

Citer
Les clés primaires cela me semble je pense simple, en prenant le Num pour N° Id du client / N° du magasin loueur / N° de la cassette.
(" Les secondaires sont des clés qui font la jonction entre 2 tables ") si j'ai bien suivi les cours.
Par contre les clés étrangères, ben gloups gloups  :NNN

Je vois pas trop ce que tu appel clé secondaire. Pour la clé primaire tu prends le problème à l'envers, lorsque tu construit un modèle il faut éviter de créer des clés dites artificiels (un numéro client, numéro de magasin), il faut respecter le cahier des charges pour les attributs, si on ne te demande pas de mettre un ID n'en met pas (tu verras qu'on peut ajouter ce type de clé lorsqu'on crée le modèle physique, qui te donnera ton code SQL), sauf si tu es obligé.

Donc pour ta clé primaire, commence par noter tous les attributs, puis ensuite cherche le, ou les attributs qui pourront te donner une clé primaire (tu auras souvent plusieurs possibilités possible, il faut que cette clé identifie de manière unique un enregistrement). Il faut aussi te dire que cela varie selon l'utilisation voulue. Imaginons que tu ais une table Personne, avec un nom, un prénom, une date de naissance, si tu as peu d'enregistrements, tu pourrais considérer qu'il n'y aura pas d'homonyme, donc {nom, prénom} serait ta clé primaire, mais cela ne marche pas si tu as beaucoup d'enregistrement, c'est une question de logique et d’interprétation.

La clé étrangère te permet de lier des tables entre elles, c'est un truc que tu verras tout le temps.

Citer
Pour la cardinalité, je verrais demain, car dons ton cours je viens de découvrir la lettre M que je n'ai pas vu dans les miens. Oups alors.

M ? Je pense que c'est juste un nombre, exactement comme N.

Tu verras la plupart du temps la cardinalité est assez simple, pour schéma par exemple il faut te demander (par rapport aux contraintes) :
Pour abonné - adresse,
Un abonné peut avoir combien d'adresse ? entre aucune et plusieurs, exactement 1, entre une et plusieurs, exactement entre 1 et 3, ...
De même, une adresse peut correspondre à combien de personnes ?

Et ça va te donner la cardinalité.



Pour Etat, tu peux utiliser une énumération, en gros il te faut "créer" un type de variable. Pour chaque attribut, il faut que tu mette son type, par exemple, type date, entier, flottant, string, etc.

Pour ton exercice tu dois (si je me trompe pas, j'ai pas vérifié) pouvoir relier entre elles toutes tes tables.

Une fois que tout seras bien en forme et clair, tu pourras en faire le modèle Entité-Association.



Une dernière chose, ne t'en fait pas (pour le moment) pour ce genre de choses : "une location n'est permise que si le client est en règle", "la consultation d'un client permettra d'obtenir son nom, son adresse, son nombre d'emprunts en cours, la liste des numéros de cassettes et des titres qu'il a actuellement empruntés;
- la consultation d'un genre permettra d'obtenir la liste des films de ce genre disponibles dans un magasin donné;
- périodiquement, on veut obtenir la liste des retardataires; on veut pour chaque cassette non retournée à temps les informations suivantes : nom et adresse du client, date de l'emprunt, numéro(s) de cassette et titre du (des) film(s) concerné(s);
- on veut pouvoir connaître pour chaque cassette (identifiée par une numérotation commune aux dix magasins) où elle est, quand elle a été mise en service, quel film y est enregistré, combien de fois elle a déjà été louée, et quel est son état (de très bon à mauvais)."

Il faut que tu mette en place les attributs et tables qui permettraient de faire ça, mais tu te pourras pas faire ce qu'ils disent tout de suite. (ça sera ensuite avec de l'algèbre relationnelle : des projections, restrictions, jointures, etc).

 :AAC



« Modifié: novembre 13, 2014, 13:59:29 par xtrem47 »

Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Re : Base de données Cours de rattrapage
« Réponse #5 le: novembre 13, 2014, 21:57:02 »
salut Xtrem,

Pour la clé secondaire, ben j'ai sans doute pas eu le bon terme  :NNN.

Citer
il faut éviter de créer des clés dites artificiels (un numéro client, numéro de magasin), il faut respecter le cahier des charges pour les attributs, si on ne te demande pas de mettre un ID n'en met pas (tu verras qu'on peut ajouter ce type de clé lorsqu'on crée le modèle physique, qui te donnera ton code SQL), sauf si tu es obligé.
Pourquoi? c'est quand même plus simple d'identifier quelque chose ou quelqu'un par un n° unique.
Si il y a plusieurs Xtrem, pour les différencier, le N° de Sécu Social le fera, non!!!



Citer
La clé étrangère te permet de lier des tables entre elles, c'est un truc que tu verras tout le temps.

Cette clé étrangère, elle est donc dans la table principale (mère) puis dans la table (fille). C'est elle qui fait la liaison entre les deux, c'est bien cela?



Je vais regardé l'exo et poster ce soir ou demain un fichier xlsx.
Désolé si mon vocabulaire n'est pas encore précis  :AAM

labougie
I'll never give up

Hors ligne xtrem47

  • TeamSX
  • Members
  • ***
  • Messages: 576
Re : Re : Base de données Cours de rattrapage
« Réponse #6 le: novembre 13, 2014, 22:20:09 »
Salut,

Citer
Citer
il faut éviter de créer des clés dites artificiels (un numéro client, numéro de magasin), il faut respecter le cahier des charges pour les attributs, si on ne te demande pas de mettre un ID n'en met pas (tu verras qu'on peut ajouter ce type de clé lorsqu'on crée le modèle physique, qui te donnera ton code SQL), sauf si tu es obligé.
Pourquoi? c'est quand même plus simple d'identifier quelque chose ou quelqu'un par un n° unique.
Si il y a plusieurs Xtrem, pour les différencier, le N° de Sécu Social le fera, non!!!

Un peu trop simple même ;D
Non assez souvent tu peux te passer de clé artificielle, et lorsque tu le peux, fais-le.

Sinon oui, c'est tellement plus simple, souvent plus performant, ça t'évite d'avoir des clés étrangères sur plusieurs champs, que des avantages, mais ça ne représente rien, c'est artificiel, conceptuellement ça ne signifie rien. Est-ce que c'est grave de les utiliser systématiquement, non la plupart du temps, mais il va t'arriver d'avoir des clés naturelles (non artificielles) qui feraient très bien l'affaire comme clé primaire, ça fait doublons avec une clé artificielles que tu viendrais ajouter.

Je te laisse regarder : http://bdd.crzt.fr/rel/www/co/relUC022.html



Citer
Citer
La clé étrangère te permet de lier des tables entre elles, c'est un truc que tu verras tout le temps.

Cette clé étrangère, elle est donc dans la table principale (mère) puis dans la table (fille). C'est elle qui fait la liaison entre les deux, c'est bien cela?

Oui, c'est une colonne (ou plusieurs) d'une table qui est utilisée pour faire référence à une colonne (ou plusieurs) d'une autre table, et ainsi cela crée un lien entre les tables. Je pense que ça sera plus clair après que tu ais vu les différents types d'associations et la cardinalité.

 :AAC

Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Re : Base de données Cours de rattrapage
« Réponse #7 le: novembre 14, 2014, 00:03:14 »
J'apprécie beaucoup la qualité de tes liens  :AAN  :AAN  :AAN.

J'ai balbutié un modèle conceptuel de données (MCD), le vocabulaire rentre  :NNN.

J'ai facilité mon travail en prenant des clés Artificielles, type Num_
Les attributs des entités sont normalement corrects, pas de doublon. Par contre, beaucoup de mal pour ficeler les associations.

En cherchant j'ai trouvé ce lien, très instructif aussi  ==> http://cyril-gruau.ftp-developpez.com/ConceptionBD.pdf
C'est expliquer de façon encore plus simple que dans mes cours, j'arrive un peu mieux à me faire donc au vocabulaire.

Je n'arrive pas à représenter ceci
Citer
- périodiquement, on veut obtenir la liste des retardataires; on veut pour chaque cassette non retournée à temps les informations suivantes : nom et adresse du client, date de l'emprunt, numéro(s) de cassette et titre du (des) film(s) concerné(s);
La phrase est pourtant simple est hyper explicite, mais la mise en oeuvre, bien moins  :hi:

labougie

Edit
J'ai retravaillé le MCD

dispo 21 jours

« Modifié: novembre 14, 2014, 10:54:15 par labougie »
I'll never give up

Hors ligne xtrem47

  • TeamSX
  • Members
  • ***
  • Messages: 576
Re : Base de données Cours de rattrapage
« Réponse #8 le: novembre 14, 2014, 14:04:40 »
Salut,

Pour cette phrase de l'énoncé j'en ais parlé dans une réponse plus haut, ne t'en préoccupe pas.

Ton lien a expiré. J'avais regardé vite fait ce matin, de ce que je me souviens, les flèches c'est uniquement pour l'héritage, n'oublie pas que tes associations sont dans les deux sens là, il en va donc de même pour la cardinalité, deux par association (sauf exception dont on parlera plus tard). Je n'ai pas compris ta logique avec les clés étrangères, par exemple si je me trompe pas pour adresse :

Dans la table tu me mets un id_adresse, un id_client et un id_magasin, ok pour l'ID adresse très bien, après il faut en effet que ta table adresse soit liée au client et au magasin, d'ailleurs tu pourras mettre ça en évidence avec les associations, par contre ID_client et ID_magasin n'ont rien à priori rien à faire dans la table adresse, je ne vois pas comment l'expliquer c'est simplement illogique, ce n'est pas ton adresse qui a un client ET un magasin, non, c'est un client qui a une adresse et un magasin qui a une adresse.
Donc tu aurais plutôt Adresse avec ID_adresse, dans client, ID_client et ID_adresse, dans magasin, ID_magasin et ID_adresse.

D'ailleurs tiens pour revenir sur les clés primaires et les clés artificielles, ID_magasin c'est bien, mais par exemple si tu as nom_magasin et adresse, ne pense-tu pas que ces deux attributs pourraient faire office de clé primaire ? (je connais pas deux magasins du même nom qui ont la même adresse :P) Je ne vois aucun problème à ce que tu utilises des clés artificiels mais il reste très important que tu comprenne bien la notion de clé, la facilité peut mener à l'incompréhension. Je verrais très bien un examen où on te donne des tables, et en première question "dans chaque table souligner la clé primaire".

J'avais aussi noté, pour Etat comme je te l'ai dis, vu l'énoncé il serait certainement bien vu que tu utilise une énumération, sauf si tu penses que dans le temps, on pourrait vouloir modifier (ajouter, modifier ou supprimer un type d'état) la table. A toi de voir.

Sinon ça me paraissait pas mal du tout :sup:

 :AAC

Edit : j'avais pas vu ton edit, donc mes remarques concernent ce que tu avais posté hier soir.
« Modifié: novembre 14, 2014, 14:06:21 par xtrem47 »

Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Re : Base de données Cours de rattrapage
« Réponse #9 le: novembre 14, 2014, 22:17:24 »
Bonsoir Xtrem,

Citer
D'ailleurs tiens pour revenir sur les clés primaires et les clés artificielles, ID_magasin c'est bien, mais par exemple si tu as nom_magasin et adresse, ne pense-tu pas que ces deux attributs pourraient faire office de clé primaire ? (je connais pas deux magasins du même nom qui ont la même adresse :P) Je ne vois aucun problème à ce que tu utilises des clés artificiels mais il reste très important que tu comprenne bien la notion de clé, la facilité peut mener à l'incompréhension. Je verrais très bien un examen où on te donne des tables, et en première question "dans chaque table souligner la clé primaire".

Si ton magasin et un nom d'enseigne nationale "Labougie Location". Chaque magasin porte donc le même nom, mais pas la même adresse, alors l'id_Magasin pourrait se construire de la sorte.

nombredemagasin_département cela donnant ceci:

  • 0130  magasin 01 du département 30
  • 0230  magasin 02 du département 30
  • 0330  magasin 03 du département 30
  • Etc... pour chaque magasins de chaque département

Voici la raison pour laquelle l'ID me semble important, ainsi, d'un simple coup d'oeil, l'on sait d'où provient le produit. Que cela soit pour mon exo ou pour mon cas de tout les jours (grosse enseigne internationale)



Citer
J'avais aussi noté, pour Etat comme je te l'ai dis, vu l'énoncé il serait certainement bien vu que tu utilise une énumération, sauf si tu penses que dans le temps, on pourrait vouloir modifier (ajouter, modifier ou supprimer un type d'état) la table. A toi de voir.

Que nommes tu une énumération? (une liste de choix dans un soft, mais ici c'est la même chose, mais comment m'y prendre).

Le lien avec les corrections suite à ton dernier post

labougie
I'll never give up

Hors ligne xtrem47

  • TeamSX
  • Members
  • ***
  • Messages: 576
Re : Re : Base de données Cours de rattrapage
« Réponse #10 le: novembre 15, 2014, 17:11:02 »
Salut,

Citer
Si ton magasin et un nom d'enseigne nationale "Labougie Location". Chaque magasin porte donc le même nom, mais pas la même adresse, alors l'id_Magasin pourrait se construire de la sorte.

nombredemagasin_département cela donnant ceci:

  • 0130  magasin 01 du département 30
  • 0230  magasin 02 du département 30
  • 0330  magasin 03 du département 30
  • Etc... pour chaque magasins de chaque département

Voici la raison pour laquelle l'ID me semble important, ainsi, d'un simple coup d'oeil, l'on sait d'où provient le produit. Que cela soit pour mon exo ou pour mon cas de tout les jours (grosse enseigne internationale)

Un ID se construit habituellement comme un simple index, notamment pour des raisons de performances. Mais passons, moi je veux juste que tu comprenne comment se construit une clé primaire, la clé artificielle dans 99% des cas c'est parfait.



Citer
Citer
J'avais aussi noté, pour Etat comme je te l'ai dis, vu l'énoncé il serait certainement bien vu que tu utilise une énumération, sauf si tu penses que dans le temps, on pourrait vouloir modifier (ajouter, modifier ou supprimer un type d'état) la table. A toi de voir.

Que nommes tu une énumération? (une liste de choix dans un soft, mais ici c'est la même chose, mais comment m'y prendre).

Ce que j'appel énumération, c'est un type de donnée, tu peux en ajouter dans une base, il y a des représentations en UML (aucune idée en E-A). Par exemple là tu ferais un typedef enum EtatObjet {BON, MOYEN, MAUVAIS} EtatObjet; Que tu pourrais ensuite utiliser comme type pour un champ Etat dans une table.



Citer
Le lien avec les corrections suite à ton dernier post

Pas mal de choses que j'ai du mal à comprendre, je te propose une autre base de travail, j'ai fais rapidement un diagramme UML (ce n'est donc pas ce que tu veux), il y a des choses qui ne vont pas et j'ai peut-être pas trop suivi la consigne de l'exercice, mais ça nous donnera une base de travail. Je pense que tu saisira mieux la logique de ce que j'ai expliqué dans ma réponse précédente. Essaye donc d'améliorer ton diagramme et pareil hésite pas à poser des questions.

UML : http://up.security-x.fr/file.php?h=R4a82e8df1b077237e3fbab8990a69801

 :AAC

Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Re : Base de données Cours de rattrapage
« Réponse #11 le: novembre 16, 2014, 19:17:20 »
Salut Xtrem,

Ton Uml m'aide un peu mieux,  :sup:.
Donc, pour partir sur de bonnes bases, je recommence tout depuis le début afin que tu puisses me guider sur les étapes.

J'ai donc décortiqué l'énoncée de la façon suivante:

  • 10 Magasins
  • Donc des clubs
  • Des clients
  • Des cassettes
  • Des films
  • Un réalisateur
  • Des acteurs
  • Des conditions de location
  • L'état des K7
  • La gestion des retards


Ensuite j'ai découpé tout cela en différentes parties.

Pour le magasin

Pour le club

Pour le Client
  • Il verse une caution
  • Suivant montant caution, a droit de 1 à 6 K7

Conditions location
  • Autorisée si client en règle
  • Ne pas avoir de K7 en retard
  • Durée de l'emprunt 3 jours maxi
  • Retournée dans n'importe quel club

Cassette
  • Plusieurs K7 peuvent avoir le même film (donc un choix pour plusieurs clients de louer le même film)
  • Date de mise en service
  • Elle aura un N° d'état commun à chaque magasin (de TB à Mauvais)
  • Le nom du film que l'on doit trouver dans la K7
  • Combien de fois elle a été loué

Film
  • Il a un genre cinématographique
  • Il possède un nom
  • Est pour un type de public
  • A une durée
  • Est réalisé par un réalisateur
  • A des acteurs prinicpaux

La consultation client
  • Nom
  • Adresse
  • Nombre d'emprunt en cours
  • Liste des N° de K7
  • Titre des K7 actuellement empruntées

Consultation du genre
  • Liste des films du genre, dispo dans magasin donné

Consultation des retardataires
  • Périodiquement, cela doit sous entendre par (jour, semaine, mois)
  • liste des K7 non retournées à temps
  • Nom & adresse du client
  • Date de l'emprunt
  • N° & titre des K7

ici le code au cas ou tu souhaites directement avoir accès aux listes
[list]
[li] 10 Magasins[/li]
[li] Donc des clubs[/li]
[li] Des clients[/li]
[li] Des cassettes[/li]
[/list]

Ensuite j'ai découpé tout cela en différentes parties.

[color=blue]Pour le magasin[/color]

[color=blue]Pour le club[/color]

[color=blue]Pour le Client[/color]
[list]
[li] Il verse une caution[/li]
[li] Suivant montant caution, a droit de 1 à 6 K7[/li]
[/list]

[color=blue]Conditions location[/color]
[list]
[li] Autorisée si client en règle[/li]
[li] Ne pas avoir de K7 en retard[/li]
[li] Durée de l'emprunt 3 jours maxi[/li]
[li] Retournée dans n'importe quel club[/li]
[/list]

[color=blue]Cassette[/color]
[list]
[li] Plusieurs K7 peuvent avoir le même film (donc un choix pour plusieurs clients de louer le même film)[/li]
[li] Date de mise en service[/li]
[li] Elle aura un N° d'état commun à chaque magasin (de TB à Mauvais)[/li]
[li] Le nom du film que l'on doit trouver dans la K7[/li]
[li] Combien de fois elle a été loué[/li]
[/list]

[color=blue]Film[/color]
[list]
[li] Il a un genre cinématographique[/li]
[li] Il possède un nom[/li]
[li] Est pour un type de public[/li]
[li] A une durée[/li]
[li] Est réalisé par un réalisateur[/li]
[li] A des acteurs prinicpaux[/li]
[/list]

[color=blue]La consultation client[/color]
[list]
[li] Nom[/li]
[li] Adresse[/li]
[li] Nombre d'emprunt en cours[/li]
[li] Liste des N° de K7[/li]
[li] Titre des K7 actuellement empruntées[/li]
[/list]

[color=blue]Consultation du genre[/color]
[list]
[li] Liste des films du genre, dispo dans magasin donné[/li]
[/list]

[color=blue]Consultation des retardataires[/color]
[list]
[li] Périodiquement, cela doit sous entendre par (jour, semaine, mois)[/li]
[li] liste des K7 non retournées à temps[/li]
[li] Nom & adresse du client[/li]
[li] Date de l'emprunt[/li]
[li] N° & titre des K7[/li]
[/list]

Maintenant je suppose qu'il faut créer ce qui se nomme les entités et choisir une clé_primaire.
Mais avant cela j'attends ta réponse.

labougie
I'll never give up

Hors ligne xtrem47

  • TeamSX
  • Members
  • ***
  • Messages: 576
Base de données Cours de rattrapage
« Réponse #12 le: novembre 16, 2014, 19:57:00 »
Salut,

Citer
  • 10 Magasins
  • Donc des clubs
  • Des clients
  • Des cassettes
  • Des films
  • Un réalisateur
  • Des acteurs
  • Des conditions de location
  • L'état des K7
  • La gestion des retards

Citer
Donc des clubs

Dans ma tête c'est des magasins qui se réunissent en un club.

Citer
Des conditions de location, La gestion des retards

Oui mais comme déjà expliqué surtout te tracasse pas avec ça pour le moment.

Citer
Ensuite j'ai découpé tout cela en différentes parties.

OK, c'est très bien cette liste, ça va bien t'aider à réaliser le truc.



Citer
Maintenant je suppose qu'il faut créer ce qui se nomme les entités et choisir une clé_primaire.
Mais avant cela j'attends ta réponse.

Oui, il faut que tu ais toutes tes entités (là je pense que c'est bon) puis tu mets les attributs, choisi la clé primaire, puis il faudra faire les associations. Et on sera bon je pense. Si tu veux tout formaliser tu peux commencer à faire de l'entité-association.

Bon courage :AAC

Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Re : Base de données Cours de rattrapage
« Réponse #13 le: novembre 16, 2014, 21:22:24 »
Voici la copie jpg des Entites, attributs avec le modèle association.

Les liaisons apportent les cardinalités, /!\ ici elles sont données par défaut par l'outil que j'utilise, donc, je ne les ai pas modifié car je ne les ai pas encore étudié.
 
Par contre comment inscrire dans ce schéma les infos suivantes:

Date de départ, de retour, puis les états des k7.

labougie

Fichier.jpg
I'll never give up

Hors ligne xtrem47

  • TeamSX
  • Members
  • ***
  • Messages: 576
Base de données Cours de rattrapage
« Réponse #14 le: novembre 20, 2014, 22:33:07 »
Salut,

Désolé pour le temps de réponse, donc ce que tu as fais c'est pas mal du tout :sup:

D'abord des petits trucs, associer un mail à une adresse ? Bof

Dans cassette tu mets date_entrée et duree_location, ça ne sont pas des attributs liées à la cassette, mais pour le premier à l'association magasin / cassette, et pour le second à l'association client / cassette, d'où l'utilisation de classes d'association. Elles sont très utiles, c'est plus simple de s'y retrouver, par la suite on peut même avoir un historique de toute l'activité de la cassette (qui l'a loué, combien de temps, dans quels magasins est-elle passée, etc).

Reste donc à vérifier tes attributs, sélectionner les clés primaires, à défaut créer des index (clés artificiels). Et faire la cardinalité (je pense que tu as compris le principe), juste un petit truc si je me souviens bien le "sens" de la cardinalité est inversé entre UML et E-A (donc si tu regardes mon modèle pour voir ce que j'aurais fais en E-A il faut que tu permute les cardinalités de chaque coté ^^).

 :AAC

Hors ligne labougie

  • Diplômés
  • Power Members
  • *****
  • Messages: 1451
  • I just can't get enough - Feed me more
Re : Base de données Cours de rattrapage
« Réponse #15 le: novembre 30, 2014, 17:33:48 »
Bonsoir Xtrem47,

Moi aussi j'ai des difficultés de timing  :NNN, et de la grosse fatigue depuis une 10aine de jours  :III.

J'ai travaillé les cardinalités, puis ajouté certaines fonctionnalités dans loue suivant le cours que j'ai eu.
En passant, sais tu comment pomper la vidéo du cours (il est en webconférence sous adobe connect, ma connexion et petite et l'avoir en dur me simplifierai la tâche  :BBB.

http://cjoint.com/?0KErL1d60ua

merci pour ta lecture

labougie
I'll never give up

Hors ligne xtrem47

  • TeamSX
  • Members
  • ***
  • Messages: 576
Base de données Cours de rattrapage
« Réponse #16 le: novembre 30, 2014, 18:18:30 »
Salut,

Citer
J'ai travaillé les cardinalités, puis ajouté certaines fonctionnalités dans loue suivant le cours que j'ai eu.
En passant, sais tu comment pomper la vidéo du cours (il est en webconférence sous adobe connect, ma connexion et petite et l'avoir en dur me simplifierai la tâche  :BBB.

Ce que tu as fais me parait bien, par contre aucune idée pour capturer la vidéo.

 :AAC

Tags: