J'ai 2 bases de données sqlite avec des données communes mais avec des objectifs différents et je voulais éviter de la réinsertion de données, donc je me demandais si il était possible de copier un tableau à partir d'un DB à l'autre. Je n'ai rien trouvé à ce sujet sur Google concernant les bases de données sqlite, de sorte que mes espoirs ne sont pas élevés.
Réponses
Trop de publicités?Considérons un exemple où j'ai deux bases de données à savoir allmsa.db et atlanta.db. Dire que la base de données allmsa.db a des tables pour tous les msas en NOUS et de la base de données d'atlanta.db est vide.
Notre objectif est de copier la table d'atlanta de allmsa.db à atlanta.db.
Étapes
- sqlite3 atlanta.db(aller à atlanta base de données)
- Joindre allmsa.db. Cela peut être fait en utilisant la commande
ATTACH '/mnt/fastaccessDS/core/csv/allmsa.db' AS AM;
notez que nous donner le chemin complet de la base de données pour être fixé. -
vérifiez la liste de base de données à l'aide de
sqlite> .databases
vous pouvez voir le résultat en tant queseq nom de fichier
0 main /mnt/fastaccessDS/core/csv/atlanta.db
2 AM /mnt/fastaccessDS/core/csv/allmsa.db - maintenant vous arrivez à votre cible réelle. Utilisez la commande
INSERT INTO atlanta SELECT * FROM AM.atlanta;
Cela devrait servir vos fins.