[Résolu] lien entre les tables

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Répondre
yerffoj
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 13 mars 2018 10:59

[Résolu] lien entre les tables

Message par yerffoj »


La modération vous a écrit: création d'une base supprimé du titre car devenu inutile après déplacement dans la section Bases de données

Bonjour à tous,

Alors voilà je me présente Joffrey, débutant dans le monde de la base...
je suis en charge d'une base consommateur dans mon entreprise : base que j'ai créé moi même il y a maintenant 2 ans en lisant des tutoriels et différents articles sur ce forum d'aide. Ma base fonctionne mais je pense qu'il est possible de l'améliorer... ce que je suis incapable de faire et donc j'aurai besoin de votre aide. De plus, j'ai quelques bugs parfois et j'ai peur de perdre toute ma base un jour ou l'autre

je travaille pour une entreprise qui recrute des personnes lambdas afin qu'ils viennent donner leurs avis sur des produits alimentaires ou autres. du coup dans ma base je dois pouvoir retrouver les coordonnées des personnes, les études auxquelles chacun à participer avec l'indemnisation reçue en même temps.
Nous avons plus de 2000 personnes inscrites au total, pour une 50aine études différentes depuis 2012. Il est impératif que je puisse savoir que monsieur x a participé à cette étude et a reçu x euros d'indemnisation.

J'ai donc créé 5 tables :
1 table coordonnées : nom, prénom, mail ...
1 table remarques :
1 table participation : etude 1, etude 2 etude 3...
1 table indemnisation : étude 1, etude 2, etude 3
1 table mode d'indemnisation

J'ai relié ces tables entre elles via 2 clés primaires : le nom et le prénom des personnes.
D'après les tutoriels ce n'est pas la meilleure manière de faire mais je n'ai pas réussi à faire autrement. La table mode d'indemnisation n'est pas relié aux autres car je ne sais comment la relier. J'ai bien compris qu'il fallait relier les tables afin de pouvoir faire des requêtes ou des formulaires.

merci pour votre aide.

(ps : je n'arrive pas à mettre en pièce jointe ma base)
Dernière modification par micmac le 14 mars 2018 17:13, modifié 2 fois.
Raison : [Résolu] remplace [résolu]
open office 4.1.0 sur windows 10
Avatar de l’utilisateur
tintin
GourOOu
GourOOu
Messages : 9343
Inscription : 18 juil. 2008 17:29
Localisation : F-Oise + F-Savoie

Re: lien entre les tables

Message par tintin »

Bonjour et bienvenue,
[b][color=#404080]yerffoj[/color][/b] a écrit :je n'arrive pas à mettre en pièce jointe ma base
Essayez de nous dire pourquoi.
Comment joindre un fichier
[*]Si le fichier dépasse les 500 Ko acceptés mais inférieur à 8 Mo (8 192 Ko)
vous pouvez le joindre en passant uniquement par : http://www.cjoint.com/
AOO 4.1.15 et LibO stable 7.6.6 / macOS Intel 13.6.6 Ventura
Adoptium-temurinJDK-jre_1.8.0_402 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
yerffoj
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 13 mars 2018 10:59

Re: lien entre les tables

Message par yerffoj »

Merci Tintin pour ta réponse rapide,

en fait mon fichier fait 23Mo pourtant j'ai enlevé tout les données confidentielles et fait le ménage. du coup je ne sais comment faire pour le joindr. j'ai regardé le tutoriel pour comment envoyer un fichier mais cela ne m'apporte pas la réponse malheureusement.
open office 4.1.0 sur windows 10
Avatar de l’utilisateur
tintin
GourOOu
GourOOu
Messages : 9343
Inscription : 18 juil. 2008 17:29
Localisation : F-Oise + F-Savoie

Re: lien entre les tables

Message par tintin »

Bonjour,

23Mo ? Qu'avez-vous mis dedans, des images ?
Vous pouvez le joindre en passant par : http://dl.free.fr/.
Ce site conservera le fichier 30 jours ce qui devrait être largement suffisant.
Vous placez dans votre message le lien que vous donne free après votre téléchargement
AOO 4.1.15 et LibO stable 7.6.6 / macOS Intel 13.6.6 Ventura
Adoptium-temurinJDK-jre_1.8.0_402 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
yerffoj
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 13 mars 2018 10:59

Re: lien entre les tables

Message par yerffoj »

merci tintin,
voici le lien vers ma base : http://dl.free.fr/mnQh4HSYV
Non je n'ai pas du tout d'image, là elle est quasiment vide puisque ce sont des données confidentielles donc j'ai quasiment tout supprimé et remplacé par des données bidons. je ne comprend pas non plus pourquoi elle est aussi grosse...

merci par avance
open office 4.1.0 sur windows 10
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25145
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: lien entre les tables

Message par Dude »

yerffoj a écrit : je ne comprend pas non plus pourquoi elle est aussi grosse...
A lire d'urgence :
Image
yerffoj
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 13 mars 2018 10:59

Re: lien entre les tables

Message par yerffoj »

bonjour Dude,

merci pour ce conseil ,j'ai fait la manip SQL et du coup mon fichier en fait plus que 36ko :) je garde cette manipulation en mémoire.
Ma base est enregistré sur dropbox au cas où elle plante justement j'ai la possibilité de la récupérer à la version antérieur.
La modération vous a écrit: base compactée rapatriée pour vous

Base-joffreydépersonnalisé-1.odb
(34.6 Kio) Téléchargé 134 fois
open office 4.1.0 sur windows 10
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: lien entre les tables

Message par jeanmimi »

Bonjour,
yerffoj a écrit :J'ai relié ces tables entre elles via 2 clés primaires : le nom et le prénom des personnes.
Les relations se font plutôt entre champs de Type INTEGER.
Pièces jointes
Base-joffreydépersonnalisé.odb
Tables reliées par leur ID de Type INTEGER.
La requête affiche le résultat de la relation pour les champs sélectionnés.
(35.98 Kio) Téléchargé 134 fois
Relation entre Coordonnee et Remarque.png
Relation entre Coordonnee et Remarque.png (9.92 Kio) Consulté 2501 fois
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
yerffoj
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 13 mars 2018 10:59

Re: lien entre les tables

Message par yerffoj »

bonjour Jeanmimi et merci,


ok mais du coup comment puis je m'y retrouver si je n'ai pas le nom des personnes dans chaque table ?
Si je comprend bien pour les tables indemnisation et participation il faut que je crée une clé primaire "id participation" et un "id coordonnées" que je relie à l"id coordonnées" de ma table coordonnées ? c'est bien cela ?

autre question qui en découle : comment m'assurer que je n'ai pas de doublon ?

merci par avance
open office 4.1.0 sur windows 10
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: lien entre les tables

Message par jeanmimi »

yerffoj a écrit :ok mais du coup comment puis je m'y retrouver si je n'ai pas le nom des personnes dans chaque table ?
On s'y retrouve par l'ID. Et comme il n'y a qu'un seul ID par participant à une étude, il n'y a pas de doublon.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 19:07
Localisation : Guyane

Re: lien entre les tables

Message par Piaf »

Bonsoir
Un petit exemple éventuel.
Relations.png
A+
Pièces jointes
Base-joffreydépersonnalisé.odb
(32.07 Kio) Téléchargé 135 fois
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
yerffoj
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 13 mars 2018 10:59

Re: lien entre les tables

Message par yerffoj »

bonjour,

merci pour vos réponses jeanmimi et piaf.
je jettes un oeil sur vos conseils et réponses, j'essaie de les comprendre et de les assimiler et je reviens vers vous.

a plus tard
open office 4.1.0 sur windows 10
yerffoj
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 13 mars 2018 10:59

Re: lien entre les tables

Message par yerffoj »

Bonjour,

j'ai eu le temps de regarder la proposition faites par Piaf, et je crois que j'ai compris. Par rapport à ma base de départ cela me parait plus facile à gérer.
Par contre je me pose d'autres questions...

questions 1 : je dois pouvoir indiquer une somme d'indemnisation pour chaque étude. faut-il que je crée une autre table ? le soucis c'est que l'indemnisation varie en fonction des études... Actuellement j'ai ma base sous forme d'un excel avec plusieurs onglets dont un onglet avec un tableau récapitulant les indemnisations. le format est de ce type
Nom etude 1 etude 2 etude 3 etude n
victor hugo 10 euros
boris vian 8 euros
arthur rimbaud 8 euros 16 euros
...n

il faudrait que je puisse importer facilement ce fichier dans la base (plus de 2000 personnes) je sais comment faire pour les tables coordonnées et remarques puisqu'elles n'ont pas vraiment changer sauf ajout d'id mais pas pour l'indemnisation.

questions 2 : Nous avons régulièrement des études et donc je dois mettre à jour la base aussitôt. Y-a-t-il un moyen pour que je puisse saisir mes informations dans excel et faire un import "en gros" c'est à dire que si j'ai 10 personnes qui ont participé à mon étude, ils ont reçu tous la même indemnisation de 10 euros par exemple. Comment faire pour mettre la base à jour sans que cela me crée de doublon. Jusqu'à présent avec ma base je devais rentrer les informations sujet par sujet grâce au formulaire et c'est vraiment chronophage et très contraignant...

j'espère avoir été clair,

merci davance pour votre aide.

yerffoj
open office 4.1.0 sur windows 10
Avatar de l’utilisateur
Bidouille
RespOOnsable forum
RespOOnsable forum
Messages : 12198
Inscription : 08 nov. 2005 17:23
Localisation : Caen, France
Contact :

Re: lien entre les tables

Message par Bidouille »

yerffoj a écrit :Par contre je me pose d'autres questions...
Questions qui doivent faire l'objet de nouveaux fils avec un titre explicite et en rapport avec la problématique exposée.

Merci de passer le présent fil en [Résolu] accompagné de la coche verte.
Répondre