creation d un prog de gestion dvd

Discussion dans 'Web, design' créé par ProfX, 7 Mars 2004.

Statut de la discussion:
Fermée.
  1. Offline
    ProfX Elite
    j ai un petit probleme de creation de fichier
    bon je sais meme en vb y a des soluce "facile" utilise les trucs "tout fait"
    moi je prefere mettre les mains dans le cambui
    mais la je seche
    je fait un programme de gestion de mes dvd
    et la ou je seche , ben c est pour les acteurs ...
    certain film demande 1 ou 2 entree d autre 10 voir plus ....
    et c est la que ca se corse
    comment faire pour que pour un film j ai acces au nom des acteurs et que depuis le nom d un acteur j ai acces a tous leur film ....
    le tous sans avoir x champ vide
    ProfX, 7 Mars 2004
    #1
  2. Offline
    moustic Touriste
    Je supose que tu compte travailler avec une base de donnée access.

    Pour gerer ce système tu peux travailler avec 2 tables + une faisant le lien car on a une relation N-N (un acteur peut jouer plusieurs films et un film à plusieurs acteurs)

    Table Film :

    n° : NuméroAuto -> cléprimaire (ou mieux mettre le titre en clé primaire)
    Titre : Texte
    Année : Date
    Descriptif : Texte
    etc...

    Table Acteur :

    n° : NuméroAuto -> clé primaire (ou mieux nom et prénom)
    Nom : Texte
    Prenom : Texte
    etc...

    Table lienFilmActeur :

    RefFilm : Numérique
    RefActeur : Numérique

    Puis dans access tu fait des relations entre les tables

    Outils Relations, tu sélectionne les 3 tables

    tu relies N° de la table Film à reffilm (Table lienFilmActeur) et tu relies N° de la table acteur à refacteur (table lienFilmActeur ), tu relies en faisant glisser le N° sur le champ réf...

    Une fenêtre apparait et là tu coche 3 cases à cocher (au moins "appliquer l'intégrité référencielle")

    Tu as un truc du même genre :

    [IMG]

    A toi de voir si ça t'interresse de partir dans cette direction
    moustic, 8 Mars 2004
    #2
  3. Offline
    ProfX Elite
    justement non , je ne veut ni acces ni sql
    juste des open "nomdufic" et un index
    ProfX, 10 Mars 2004
    #3
  4. Offline
    moustic Touriste
    Tu peux très bien remplacer les 3 tables par 3 fichiers,


    1 fichier film,
    1 fichier acteur,
    1 fichier de lien

    En tant qu'analyste programmeur, c'est la solution la plus propre qui me parait exister et qui te permet d'ajouter autant d'acteurs que tu veux à un film et autant de films que tu veux pour un acteur.

    Pour ce qui est de faire un index dans un fichier avec vb, jamais entendu parler de ça. Mais je suis pas non plus un pro sur le VB donc je peux me tromper
    moustic, 10 Mars 2004
    #4
  5. Offline
    zemicmic Elite
    windev...
    Mais fo une clé materielle a 2.000 € et une mise a jour annuelle de 500€ :?

    mais en gros, c'est tous en main, tu crees un db et tu remplis. ca te fait un exe pour la db.
    zemicmic, 22 Mars 2004
    #5
  6. Offline
    ZyPh0s Touriste
    Bon pour ta requete c'est hyper facile quand on a déjà un peu joué avec le SQL

    Tu fais 3 tables,
    1 ere,
    UID_film, Titre du film, durée, etc etc etc (mais pas d'acteurs)

    2 eme table (pour économiser de la place, on pourrait bien le faire en 2 tables mais pour des requetes future, genre trouver tous les films ou Cameron Diaz a joué, c'est plus facile en 3 tables, et comme ça tu ne dois plus réintroduire le nom des acteurs a chaque fois)
    UID_acteur, Nom acteur

    3 eme table, comme a dit moustic,
    UID_lien (on s'en fou bien mais il faut une primary key), UID_film, UID_acteur

    Donc en concret pour avoir un exemple:

    Table 1:
    Table 2:
    Table 3:
    Voilà t'as les 2 acteurs dans ce film.
    Pour la DB, 1 pc avec Apache + MySQL +PHP (tout est gratuit, et on peut choisir Windows ou Linux)

    Et puis n'importe quel pc de ton réseau peut y accéder (suffit d'avoir un browser web)
    ZyPh0s, 16 Avril 2004
    #6
  7. Offline
    cher profx... tu reviens àl'âge de la pierre en refusant sql, mais bon c'est ton droit ...

    voici donc la formule la plus simple ( à première vue... faudrait que je replonge dans mon cours de fichiers séquentiels indexés) mais en gros ça donne un truc du genre.

    Il te faut un fichier par type d'enregistrement, donc, un fichier titre, un fichier acteur par exemple. Ces deux fichiers doivent être construit d'une manière rigoureuse, à savoir (pour être le plus performant et éviter les erreurs), des champs d'une taille constante (vive la padding).

    Exemple: tu prévois 10 caractère pour le numéro du DVD et 250 caractères pour le nom du DVD. (il te faut obligatoirement le premier champs qui te servira pour l'index).

    Ensuite, il te faut un dernier fichier contenant la liste des couples DVD/Acteurs, toujours en longueur fixe.

    Je sais pas si tu vois où je veux en venir... ? Ensuite, tu dois maintenir ces fichiers toi même, et pour des raisons de rapidité, tu dois, pour chaque modification de ton fichier index, soit remettre tout le bloc contenant les paires d'un même DVD à la fin ensemble, soit utiliser un système de pointeur interne chaînant les enregistrement d'un même DVD.

    Tu peux imaginer mettre d'autres pointeurs pour gérer la lien inverse (acteur-> film), mais je te conseille de créer un autre fihcier d'index (en fait, le plus performant est un fichier par index.... )

    Les fichiers doivent toujours être construit: identifiant, champs1, champs2, .... et le plus performant, des champs de longueur fixe pour permettre de naviguer dans le fichier en utilisant une simple multiplication pour atteindre l'enregistrement recherché.

    J'espère que tu as tout compris quoi j'ai dit... si oui, alors, tu complètera toi-même les trous manquant .. si non, faudra qu'on se rencontre, que je te montre ça sur un tableau...

    Je pense que décemment, tu devrais accepter l'idée d'un SQL.


    :)
    TheFornicator, 16 Avril 2004
    #7
Statut de la discussion:
Fermée.