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

Requêtes MySQL Discussion :

Comment insérer plusieurs lignes en incrémentant la pk ?


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 76
    Points : 49
    Points
    49
    Par défaut Comment insérer plusieurs lignes en incrémentant la pk ?
    Bonjour,

    Je travaille avec mysql5.
    J'ai une unique table AFFAIRE. Je cherche à sélectionner certaines lignes de cette table, pour les recopier dans la même table, à une petite variante près, mais avec une nouvelle clé primaire. Ceci en une seule instruction.

    Voici ma requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    INSERT INTO Affaire (ID_AFFAIRE, champ2) 
    		select (SELECT MAX(ID_AFFAIRE)+1 FROM Affaire), champ2 from affaire group by id_affaire;
    J'ai une erreur de Duplicate entry, car le MAX (ID_AFFAIRE) ne s'incrémente pas au fur à à mesure de l'insertion des lignes.
    Par exemple, si j'ai 15 affaires avant de lancer ma requête, le MAX(ID_AFFAIRE)+1 vaudra toujours 16, d'où la duplicate entry...

    Une idée ?

  2. #2
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Bonjour,

    Pourquoi ne pas faire une insertion sans préciser la valeur de ID_AFFAIRE histoire de bénéficier de l'incrémentation automatique ?
    Pensez au bouton

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 76
    Points : 49
    Points
    49
    Par défaut
    Merci !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/05/2008, 08h45
  2. [MySQL] Comment insérer 6 lignes en une fois dans une base mysql avec du PHP ?
    Par Alexandrebox dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 10/02/2008, 14h39
  3. Réponses: 6
    Dernier message: 12/06/2007, 17h07
  4. [VBA-E] comment selectionner plusieurs lignes
    Par Annick.w dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/01/2007, 20h15
  5. comment insérer une ligne avec CFile::Write
    Par gbardy dans le forum MFC
    Réponses: 2
    Dernier message: 10/08/2006, 10h19

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