2009-10-29 10 views
0

Comment puis-je fusionner deux tables identiques de deux msaccess identiques db? Pour exemple:fusionner les tables msaccess

 
db1..table1 
ID Name 
1 Sanjana 
2 Parul 
3 Rohan 

db2...table1 
ID  Name 
1  Sarika 
2  Deepak 

Je veux ajouter les valeurs de deuxième table en premier comme suit:

 
ID  Name 
1   Sanjana 
2   Parul 
3   Rohan 
4   Sarika 
5   Deepak 

Répondre

3

Le type de données pour le champ ID semble être un autonumber. En tant que tel, vous pouvez faire ce qui suit:

INSERT INTO db1...table1 
SELECT Name FROM db2...table1 
0

Eh bien, puisque c'est l'accès, vous avez deux façons. le premier est mentionné par LSFR Consulting et le second serait d'utiliser l'assistant d'importation et d'indiquer à l'importation d'ignorer la colonne de clé primaire. Cela fusionnerait les données de DB2 en DB1 sans avoir de collision de clé primaire.

+0

pouvez-vous dire à l'assistant d'importation d'ignorer un champ dans les versions antérieures d'Access comme 2000? –

+0

Je sais que c'était en 2000, je ne suis pas 100% positif avec quoi que ce soit plus tôt. Cela fait longtemps que je n'utilise rien de plus tôt que les produits de bureau de 2003. – mcauthorn

1

Vous pouvez utiliser une requête append:

INSERT INTO Table1 (FName) IN 'c:\docs\ltd.mdb' 
SELECT A.FName 
FROM A; 
1

OK, voici une approche plus adaptée à une utilisation prise de débutant de l'IUG.

  1. Sauvegardez les deux bases de données et stockez-les dans un endroit sûr.

  2. Faites un compact et de réparation dans le menu d'outils sur les deux bases de données

  3. Créer une table liée à DB1 pointant vers la table db2 Pour ce faire, faites un clic droit sur un espace blanc dans la vue de la table de base de données fenêtre et choisissez la table de liens ... Suivez l'assistant pour sélectionner db2, puis sélectionnez table1.

  4. Utilisez une requête Ajout pour ajouter les données de la table1 liée dans le fichier db1.table1 Cliquez dans l'affichage des requêtes d'Access, créez une nouvelle requête en mode Création, changez son type en Append (clic droit en espace libre où les tables apparaissent et vont à type-> append) Ensuite, choisissez db1.table1 lorsque vous êtes invité à ajouter la table. Maintenant, ajoutez la table1 liée dans la requête, sélectionnez les champs à partir desquels vous voulez prendre des données (dans l'exemple, il s'agira juste de Name). Notez que vous ne voulez pas faire passer le champ id car il devra être mis à jour pour suivre d'où db1.table1 s'est arrêté, en supposant que ceci soit défini sur autonumber.

  5. Supprimer la table liée de DB1

Je ne suis pas certain à 100% sera retenu l'ordre de tri de db2.table1 lorsque son annexe à db1.table1 comme dans votre exemple. Dans la plupart des conceptions de bases de données, cela ne sera pas important, mais si quelqu'un d'autre peut faire la lumière, j'imagine que si le champ ID des deux tables est aussi la clé primaire, il le fera.

0

S'il s'agit d'une opération ponctuelle, la copie-n-collage simple fonctionnera.

Ouvrez les deux bases de données dans MS Access. Ouvrez les deux tables. Sélectionnez les valeurs à copier (cliquez avec le bouton droit sur l'en-tête de colonne et Ctrl + C).

Procéder au tableau cible. Créer un champ Nom dans la dernière ligne (nouvel enregistrement). Pour ce faire, passez la souris sur le bord gauche de la colonne Nom (le curseur devient un signe plus) et cliquez pour sélectionner la cellule. Ctrl + V. Terminé.

Questions connexes