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

Modélisation Discussion :

Enregistrement impossible dans Table


Sujet :

Modélisation

  1. #1
    Membre habitué
    Profil pro
    Cadre technique
    Inscrit en
    Mai 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Cadre technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2006
    Messages : 194
    Points : 156
    Points
    156
    Par défaut Enregistrement impossible dans Table
    Je suis complètemment perdu avec ma BDD créée il y a à peine 1 an.
    Cette BDD comporte 1 table principale et elle est reliée à plusieurs autres sur le principe des relations. Au départ , j'avais prévu suffisamment d"enregistrements (+/- 300 sur le champ "affiliés") dans cette table et celles reliées afin que ma BDD fonctionne parfaitement. Tout se passait bien.Et voici que la semaine dernière ,je veux encoder (ajouter) mon affilié 301 , un message d'erreur s'affiche :"VOUS NE POUVEZ PAS AJOUTER OU MODIFIER L ENREGISTREMENT CAR L ENRREGISTREMENT EST REQUIS DANS LA TABLE". Normal me direz-vous puisque l'intégrité référentielle joue ici son rôle. J'ai commencé l'insertion dans chaque table en relation à l'enregistrement demandé mais j'ai abandonné , ce n'est pas logique de travailler de cette manière. Je suis bloqué je ne sais pas étendre ma base et tout le travail est par terre. Je suis vraiment désolé .C'est à partir de mon formulaire d'encodage que je suis tombé sur cette impossibilité et chose étonnante, lorsque je passe en ajout sur ce fo, une fenêtre vierge se présente mais pas moyen d'encoder les données pour les tables en relation.
    J'aimerais tant pouvoir être aidé. Merci

  2. #2
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    je ne pense pas que tu dois revoir ta conception à ce stade.
    tu pourrais contourner cette intégrité référencielle en 'attaquant' directement tes tables.
    en vba avec du sql ou par recordset sur l'événement avant insertion, voir sur erreur (à vérifier).

    dans ce cas poste dans les forums appropriés.

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 350
    Points : 1 701
    Points
    1 701
    Par défaut
    Bonsoir,

    Il serait bien de voir ces relations.

    Cordialement.
    Questions techniques par MP
    Le peu que je sais, c'est à mon ignorance que je le dois.
    ...............................................................................Sacha Guitry

  4. #4
    Expert éminent sénior

    Avatar de Siguillaume
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2007
    Messages
    6 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 6 180
    Points : 25 358
    Points
    25 358
    Par défaut
    Je pense que tu devrasi donner une idee sur les tables liees a ta table principale: surtout les cardinalites et ce que la BD est cense faire.
    Mais, je ne crois pas que le probleme vienne de la conception, du moment ou cela a deja bien fonctionne, a moins que tu es fait, par inattention (ou une autre personne) des modifications sur les relations.
    Essaie donc prealablement de reviser ta BD a zero: pas la recommencer, mais la relire en verifiant les relations.
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

  5. #5
    Membre habitué
    Profil pro
    Cadre technique
    Inscrit en
    Mai 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Cadre technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2006
    Messages : 194
    Points : 156
    Points
    156
    Par défaut
    Merci pour vos idées , je réfléchie auj à cela car je suis très embarrassé et inquiet. Je vais poster sur le forum .net.

  6. #6
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    je pensais en fait plutot aux sous forums SQL/VBA, pour inserer un enregistrement... faut pas allez chercher si loin...

  7. #7
    Membre habitué
    Profil pro
    Cadre technique
    Inscrit en
    Mai 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Cadre technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2006
    Messages : 194
    Points : 156
    Points
    156
    Par défaut
    Bonjour,

    J'ai pu résoudre mon problème.Comme conseillé par Vodiem je me suis mis au travail en attaquant directement les tables puisque pour mes relations, j'ai revu et tout est cohérent.Cependant, cette méthode est lourde. Pour procéder ainsi, j'ai dû supprimer provisoirement les relations qui gênent l'ajoute d'un nouvel enregistrement dans la table principale et reproduire ensuite ces mêmes relations après cette ajoute.
    Maintenant, j'aimerais savoir comment les attaquer ces tables avec code VBA pour contourner l'effet de l'intégralité référentielleEst-ce possible avec cette méthode? Si quelqu'un a une idée, je suis preneur.Ce serait plus facile.

    Merci pour l'aide

  8. #8
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    Jacques-Henri,
    je m'imagine mal le contexte de ton soucis, mais
    cette méthode est lourde
    me suprend, j'imaginais simplement sur un év 'av insertion' vérifier l'existance de la clef primaire, la créer au cas où par un "insert into" ou par recordset et poursuivre le traitement...
    pas besoin de supprimer les relations.

  9. #9
    Membre habitué
    Profil pro
    Cadre technique
    Inscrit en
    Mai 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Cadre technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2006
    Messages : 194
    Points : 156
    Points
    156
    Par défaut
    En fait, je suis pas (encore) un expert et pour moi procéder en attaquant directement les tables me semble une façon de faire qui n'est pas aussi simple et d'autant plus fastidieuse qu'encoder à partir d'un formulaire. ceci étant dit, je ne sais pas faire autrement que de supprimer les relations sinon : je dois créer les enregistrements dans les tables liées comme l'exige l'intégrité réf...
    Ainsi en supprimant la relation de la table liée avec une autre je n'encode que dans cette table principale ( la table nommée "Ta associés") et c'est ce qui m'intéresse. Par la suite, je crée au fur et à mesure les enregistrements correspondants dans la table reliée. Merci de me dire si je fais fausse route.
    Pour la suite où puis je trouver l'aide pour mettre sous forme VBA l'év avant insertion que tu me conseille, puisque ma clef primaire existe avec N° auto.?
    Merciiiiiiiiiiiiiiiiiiiiii

  10. #10
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    pour reprendre: tu veux ajouter un enregistrement sur une table "fille" (liée) mais il faut préalablement créer un enregistrement dans la table "parent" pour pouvoir créer l'enregistrement si celui-ci n'existe pas.
    le plus simple c'est de créer un sous form lier avec "champ pères" / "champ fils".
    mais si tu ne veux pas remodifier tout cela tu dois créer manuellement l'enregistrement avant d'inserer l'enregistrement fils.
    tu peux supprimer les relations mais ce n'est pas obligatoire si tu crée l'enregistrement manquant dans parent avant l'insertion.

    recherche dans la faq pour l'insertion d'un enregistrement par recordset ou par sql.
    sinon ouvre une discution sur ton prob dans le sous forum VBA Access.

  11. #11
    Membre habitué
    Profil pro
    Cadre technique
    Inscrit en
    Mai 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Cadre technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2006
    Messages : 194
    Points : 156
    Points
    156
    Par défaut
    Hé oui, c'est tout à fait cela. Je vais suivre tes conseils,je désire pas créer de sous formulaire pour ne pas retoucher à ma BDD, mais sans supprimer les relations je vais ainsi créer l'enregistrement manquant avant insertion. Pour faire cela j'ai donc besoin de programmer l'événement en attaquant directement la table, si oui alors là je vois pas comment faire.
    Tu peux peut-être me mettre sur une piste , en postant peut-être??
    Je cherche.
    Amicalement

  12. #12
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    oui, poste dans le sous forum VBA Access, tu auras plus de participant à la discution qu'ici, et surtout il est fait pour cela.
    en principe tu dois faire dans l'ev 'av insertion':
    rechercher si l'enregistrement à un parent, sinon lui créer un parent et récupérer ce num parent (clef primaire) pour l'attribuer au champ fille qui fait le lien (clef secondaire).
    en principe c'est pas très compliqué, mais il est préférable que tu ouvres une discution dans le forum approprié pour que d'autre ayant le même soucis puisse profiter de la solution.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Enregistrer données dans table à partir d'un formulaire
    Par carpediem2807 dans le forum VBA Access
    Réponses: 16
    Dernier message: 04/05/2016, 20h53
  2. (netbeans) pools et sources jdbc : enregistrement impossible dans glassfish
    Par olivier57b dans le forum Glassfish et Payara
    Réponses: 4
    Dernier message: 04/12/2009, 21h55
  3. [AC-2003] Ajout enregistrement impossible dans une table
    Par riomois85 dans le forum Access
    Réponses: 3
    Dernier message: 13/10/2009, 13h47
  4. Enregistrement inexistant dans table parent
    Par MistyMan dans le forum Requêtes
    Réponses: 1
    Dernier message: 14/09/2009, 17h17
  5. Insertion enregistrement dans table
    Par naidinp dans le forum ASP
    Réponses: 13
    Dernier message: 11/09/2003, 09h56

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