|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre actif
![]() David Inscription : septembre 2007 Messages : 354 ![]() |
bonjour,
je suis entrain de faire une base de données sous access pour gérer des échantillons dans un labo avec plusieurs analyses par échantillons et des calculs pour chaque analyse! Pour l'instant j'ai fait qu'une seule table avec la description de l'échantillon, les analyses à faire (case à cocher) et tous les calculs que je fais avec des requête.Mon problème est que mon unique table devient assez lourde. Je voudrais que dans ma table échantillon on puisse choisir les analyses à faire. Et j'aimerais créer des tables pour chaque analyse mais je ne sais pas comment lier tout cela avec ma table échantillon. Quelqu'un a-t-il une idée? Merci |
|
|
00
|
|
|
#2 |
![]() ![]() |
Bonjour
Un peu plus de détail nous aiderait beaucoup. Qu'as tu actuellement dans ta table. Avant va jeter un coup d'oeil à ce tuto : http://mhubiche.developpez.com/Access/cours/bases/ Starec |
|
|
00
|
|
|
#3 |
|
Membre actif
![]() David Inscription : septembre 2007 Messages : 354 ![]() |
Dans ma grosse "table actuelle" j'ai
-un numéro d'échantillon (ma clef) -plusieurs champs de renseignement : clients, nature, date réception puis tous les champs avec les types d'analyse avec des cases à cocher puis plus de 40 champs numérique (en général des résultats de pesée et de densité optique) relatifs aux analyses Donc ces champs sont tous dans la même table, je les trie avec des requêtes où je fait également mes calculs par analyse. Est-ce que c'est plus explicite?! |
|
|
00
|
|
|
#4 |
![]() ![]() |
Je ne vois pas exactement le problème.
Quelles differences y a-t-il entre tes échantillons? Ont-ils des caractéristiques différentes? Si oui, alors regroupes les par groupes des caractéristiques et crée une table pour chaque groupe. DAns ce cas, pas besoin de relations entre tes tables. Si non, crée d'autre table et relie par une relation un à un:mais c'est pas très interessant de procéder ainsi. Je te conseillerai ici de conserver ta seule table. Si tu fournis d'autres details, je pourrai mieux savoir de quoi il s'agit. A bientôt |
|
00
|
|
|
#5 |
|
Membre confirmé
![]() Chef de projet MOA Inscription : septembre 2007 Messages : 191 ![]() |
Bonjour,
je crois comprendre que tu travailles directement sur ta table, et que tu es gêné par sa volumétrie, notamment le nombre de champs (colonnes). Si c'est bien cela, je te conseille de créer des formulaires qui te permettront d'avoir une lecture et une saisie plus simples et plus claires. |
|
|
00
|
|
|
#6 |
|
Membre actif
![]() David Inscription : septembre 2007 Messages : 354 ![]() |
effectivement ma table risque d'atteindre rapidement les 255 champs
En fait, chacun de mes échantillons à ses propres données pour les analyses (poids, do, concentration etc), c'est pour ça que je suis parti pour une seule table. Mais je me suis aperçu que d'autres analyses vont s'ajouter rapidement (avec toutes les données qui vont avec) augmentant sans cesse le nombre de champs. Je me demande donc s'il ne faudrait pas que je crée une table échantillon avec les renseignements génériques puis une table par analyse. ainsi à chaque nouvelle analyse, je n'aurais plus qu'a créer une table. je pense que ce serait "plus propre". Par contre comment relier tout ça? |
|
|
00
|
|
|
#7 |
|
Membre confirmé
![]() Chef de projet MOA Inscription : septembre 2007 Messages : 191 ![]() |
Effectivement, la solution que tu envisages me semble être la bonne.
Relier des tables n'est pas très difficile. Tu trouveras facilement un tuto pour te l'expliquer. |
|
|
00
|
|
|
#8 |
|
Membre actif
![]() David Inscription : septembre 2007 Messages : 354 ![]() |
j'ai commencé à chercher des tuto mais les relations un à un ne semblent pas être très courantes.
ce que je voudrais, si je fais ma base de cette manière, c'est quand je coche les analyses à faire dans ma table générale, automatiquement le n° d'échantillon s'inscrive dans la table de l'analyse correspondant à ma case à cocher! |
|
|
00
|
|
|
#9 |
|
Membre confirmé
![]() Chef de projet MOA Inscription : septembre 2007 Messages : 191 ![]() |
Si tu n'es plus dans une pure logique de saisie, mais que tu veux programmer quelque chose "d'intelligent" (du genre de ce que tu viens de décrire), il va falloir que tu passes par des formulaires et du vba. Ca devient un peu plus complexe que de la "simple" définition de tables.
|
|
|
00
|
|
|
#10 |
![]() ![]() |
Bonjour!
je suis d'avis avec spaiku. Il serait nettement avantageux que tu crée des formulaires repartis selon les champs. Mais si le nombre de champs est supérieure à 255, tu devras faire plusieurs tables. Les relier ne sera pas très compliqués. Dans ce second cas, tu commences par concevoir ta base de données sur une feuille à l'écrit (en définissant ton modèle entité -association et ton modèle logique des données relationnelles) puis à partir des règles de passage (dispo sur les tutos) tu créent des différentes tables. |
|
00
|
|
|
#11 | |
|
Membre Expert
![]() |
Citation:
|
|
|
|
00
|
|
|
#12 |
|
Membre actif
![]() David Inscription : septembre 2007 Messages : 354 ![]() |
Bon ça y est j'ai fait des tables indépendantes pour chaque analyse que j'ai relié par un relation 1-1 avec une table générale.
Mais maintenant j'ai un problème avec des requêtes!!! Mes échantillons sont regroupés en semaine, j'ai donc une table semaine reliée en 1-plusieurs à la table échantillon. j'ai fait une requête (par analyse) qui, quand on l'ouvre, me demande la semaine avec laquelle je veux travailler et qui m'affiche les échantillons ainsi que les champs numériques relatifs à mon analyse. Dans cette requête je saisis donc des données et je fait également des calculs avec ces données. jusque là tout va bien! Maintenant, je voudrais faire une requête qui me demanderait le n° de semaine et qui m'affiche uniquement les résultats de tous les échantillons et de toutes les analyses. j'ai donc essayé de faire une nouvelle requête à partir de ma requête précédente , mais j'ai un message d'erreur : "l'assistant ne peut ouvrir votre requete en mode feuille de données, peutêtre parce qu'un autre utilisateur a ouvert une table source en mode exclusif. votre requete sera ouverte en mode création" alors que toutes mes tables sont fermées. qqn a-t-il une solution? Merci |
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() |
Peux-tu joindre à ton prochain post le code SQL de ta requête ?
|
|
|
00
|
|
|
#14 |
|
Membre actif
![]() David Inscription : septembre 2007 Messages : 354 ![]() |
Voila le code sql
SELECT semaine.semaine, RECEPTION.[n° échantillon], [amidon résultat].Ramid FROM semaine INNER JOIN (RECEPTION INNER JOIN [amidon résultat] ON RECEPTION.[n° échantillon] = [amidon résultat].[N° échantillon]) ON semaine.semaine = RECEPTION.semaine; |
|
|
00
|
|
|
#15 | |||
|
Membre Expert
![]() |
Citation:
Code :
|
|||
|
|
00
|
|
|
#16 | ||
|
Membre actif
![]() David Inscription : septembre 2007 Messages : 354 ![]() |
j'ai l'erreur suivante:
"vous avez essayé de verrouiller le table "semaine requete" pendant son ouvertue, mais elle ne peut être verrouillée car elle est en cours d'utilisation. attendez un moment et recommencez l'opération." semaine et n°échantillon proviennent de tables (semaine et réception) et amidon résultat est une requete faite sur la table réception, sur la table amidon et semaine (dans la table semaine j'ai aussi des données qui me servent à faire des calculs ) voici son code: Code :
|
||
|
|
00
|
|
|
#17 |
|
Membre Expert
![]() |
Le plus simple serait que tu allèges ta base (uniquement les objets concernés et le minimum de données pour les tests), que tu la compresses (zip, rar) et que tu la place en attaché avec ton prochain post.
Il est très difficile d'imaginer précisément un contexte |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com