Concaténation de tables

An Den Messages postés 2 Statut Membre -  
 An Den -
Bonjour,

Bonjour,
je cherche à concaténer 2 tables de même format mais, bien sur de contenu différent y a t'il une méthode plus rapide que le copier coller?
Je travaille sous Acces 2002

7 réponses

  1. blux Messages postés 5032 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Salut,

    tu veux ajouter le contenu de l'une à l'autre ou concaténer les deux dans une nouvelle ?
    0
  2. An Den Messages postés 2 Statut Membre
     
    réponse à Blux
    Je veux concaténer une table à une autre car en créer une nouvelle me poserait encore plus de problème car il y a une incrémentation automatique qui identifie mes enregistrements dans d'autres table et requêtes.
    J'ai déjà fait du copier coller ça marche mais c'est un peu délicat et long
    0
  3. blux Messages postés 5032 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Dans ce cas, une requête INSERT INTO ... SELECT devrait suffire :

    INSERT INTO Table1(champ1,champ2,champ2...) SELECT Table2(champ1, champ2, champ3);   
    

    Ici, on va insérer dans Table1 les enregistrement récupérés de Table2.
    Bien s'assurer que le nombre de champs est identique dans les deux tables...

    A+ blux
     "Les cons, ça ose tout.   
    C'est même à ça qu'on les reconnait"
    0
  4. An Den
     
    merci Blux pour ta réponse rapide , n'y a-t-il pas une instruction qui permette de transférer tous les champs sans avoir à les écrire car il sont nombreux environ 40
    Instruction du genre : INSERT INTO Table1(tous les champs) SELECT Table2(tous les champs)
    0
    1. blux Messages postés 5032 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Je dirais bêtement INSERT INTO Table1 SELECT Table2;
      A tester...
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. An Den
     
    j'ai essayé les deux façons et access me sort une erreur de syntaxe dans l'instruction "insert into" en surlignant le mot table j'ai vérifié dans des bouquins je ne vois pas où se situe l'erreur

    INSERT
    INTO Table-Mariages(champ 1...)
    SELECT Table-Mariages1(champ 1...)
    0
    1. blux Messages postés 5032 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Le tiret n'est pas autorisé de manière formelle pour les noms d'objets.
      Tu devras sûrement mettre le nom de table entre crochets.
      INSERT INTO [Table-Mariages](...)
      0
  7. An Den
     
    Je dois vraiment être nul access me dit erreur syntaxe sur le nom des champs y a-t-il des caractères interdits dans ces noms de champs alors qu'en créant la table il ne m'a rien dit ?

    "N° du mariage" c'est le premier champ et erreur syntaxe est positionnée sur "du"
    Quant à supprimer les noms de champs ce n'est pas mieux
    l'instruction :
    INSERT
    INTO [Table-Mariages]
    SELECT [Table-Mariages1]
    et l'insulte d'Access :
    Référence circulaire causée par l'alias <nom> dans la liste SELECT de la définition de la requête. (Erreur 3103)
    0
    1. blux Messages postés 5032 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Comme il y a des espaces dans le nom, il faut mettre ça entre crochets.
      Moi, j'utilise systématiquement des soulignés comme facilitateurs de lecture, ça évite de mettre des crochets.

      Table_mariage
      Num_mariage
      ...
      0
  8. An Den
     
    Un grand merci pour ta participation
    Je reprendrais cela demain
    0