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

C# Discussion :

echange de clé primaire


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 46
    Par défaut echange de clé primaire
    Bonjour,

    sur une table avec une clé primaire unique, je voudrais que 2 enregistrement échangent leur clé primaire (enfait un num d'ordre). et j'y perds un peu dans les BeginEdit et AcceptChanges().

    si je fais
    dataRow1.beginEdit ();
    dataRow2.beginEdit ();
    int n = datarow1.cle;
    dataRow1.cle = datarow2.cle;
    dataRow2.cle = n;
    dataRow1.EndEdit ();
    dataRow2.EndEdit ();

    ça me sort une exeception.
    En utilisant le mécanisme acceptChanges, ça me sort une exception au moment de l'update !!!

    ya un moyen de faire ça ?

    merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2004
    Messages : 52
    Par défaut
    Tu ne peux pas modifier des clés primaires,
    une solution serait d'intervertir toutes les autres valeurs.

  3. #3
    Membre Expert

    Inscrit en
    Novembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2006
    Messages : 128
    Par défaut
    Ou alors tu as une valeur que tu es sûr de ne pas avoir par ailleurs et tu l'utilises temporairement :
    int id1 = dataRow1.Id;
    int id2 = dataRow2.Id;
    dataRow1.Id = -1;
    dataRow2.Id = id1;
    dataRow1.Id = id2;

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

Discussions similaires

  1. Import data d'Excel ds 2 table lié par clé primaire
    Par lord_paco dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 10/05/2005, 09h31
  2. [Kylix] Echange de données entre fiches
    Par _dack_ dans le forum EDI
    Réponses: 1
    Dernier message: 01/07/2003, 11h34
  3. clé primaire aléatoire
    Par peuh dans le forum PostgreSQL
    Réponses: 8
    Dernier message: 23/06/2003, 20h51
  4. Procédure stocké:Insert et renvoie de la clé primair
    Par caramel dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 17/04/2003, 09h34
  5. Problème pour récupérer la clé primaire
    Par caramel dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 11/04/2003, 13h57

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