none
Problem avec les clés primaires RRS feed

  • Question

  • salut tout le monde;

    voila j'ai une base de données en MS ACCESS, que je control depuis une application de base DotNet réalisé avec visual C#, le problem avec la clé primaire, quand je fait un Update(); je trouve que les clés que j'ai recuperer au Run Time et que j'ai utiliser dans d'autre tables sont differents.

    comment je peux controler MS ACCES   pour le forcer de prendre les valeur proposer en RunTime, ou l'inverse C-A-D comment recuperer  les vrais valeurs?

    merci infiniment

    mardi 18 décembre 2007 19:25

Réponses

  • Pour ce faire, après la mise à jour de la BD Access (J'imagine ici que tu utilise un DataSet) tu doit faire la requête SELECT @@IDENTITY sur la BD pour récupérer le bon ID et ensuite l'appliquer sur ton enregistrement.

     

    Voir la documentation sur MSDN, regarde la section Access dans la seconde partie de la page.

    jeudi 10 janvier 2008 12:57
    Modérateur

Toutes les réponses

  • Bonsoir,

     

    Je pense qu'il serait intéressant de reformuler la question car "je trouve que les clés que j'ai recuperer au Run Time et que j'ai utiliser dans d'autre tables sont differents.", ce n'est pas très très clair.

     

    En reformulant, je pense que la solution viendra d'elle même :-)

     

     

     

    dimanche 23 décembre 2007 19:30
  • merci de ta reponse

    je vais etre plus claire;

     

    j'ai deux tables, ClientTable, et CommandTable, la Table des Commandes contient une colonne qui represent le parent qui reference le Client,

    la table client a une  clef primaire qui est de type AutoIncrement, je lance mon application j'ajoute un client est en meme temp j'ajoute une commande de ce client

    techniquement j'ajoute le client  , le lance un EndEdit(); je recuper la clef de cette client et je l'utilise dans la commande , enfin je lance un Update() sur l'ensemble des tables,

    le problem que je trouve : la clef que j'ai utilise pour la comande et celle qui reference le client , sont differents, C-A-D que MS-Access a attribuer son raisonnement sur les clef primaire.

     

    NB : je n'ai pas utiliser les relation proposer dans visual c#.

    Merci .

    jeudi 10 janvier 2008 11:42
  • Pour ce faire, après la mise à jour de la BD Access (J'imagine ici que tu utilise un DataSet) tu doit faire la requête SELECT @@IDENTITY sur la BD pour récupérer le bon ID et ensuite l'appliquer sur ton enregistrement.

     

    Voir la documentation sur MSDN, regarde la section Access dans la seconde partie de la page.

    jeudi 10 janvier 2008 12:57
    Modérateur