2011-09-17 5 views
1

Je veux copier la table mysql d'une base de données à un autre en utilisant la ligne de commande mysqlerreur en essayant de copier la table mysql d'une base de données à un autre

Je suis en train d'exécuter commmand

DROP TABLE IF EXISTS `db1.tablename`; CREATE TABLE `db1.tablename` like `db2.tablename`; 

mais il est me donner l'erreur aucune base de données est sélectionnée.

mais si je tire

use db2 
DROP TABLE IF EXISTS `db1.tablename`; CREATE TABLE `db1.tablename` like `db2.tablename`; 

il est create table db1.tablename intérieur db 2.

Comment résoudre ce problème?

+0

Avez-vous essayé 'use db1'? –

+1

alors erreur est db1.db1.tablename n'existe pas. –

Répondre

0

Je pense que votre create devrait ressembler à ceci:

CREATE TABLE `db1.tablename` SELECT * FROM `db2.tablename`; 
+0

dans ce cas, il ne copie que des données non méta-données d'une table –

0

Le nom de la table dans votre requête comprend le nom de la base de données sans séparation. Cela devrait être quelque chose comme:

DROP TABLE IF EXISTS `db1`.`tablename`; 
CREATE TABLE `db1`.tablename` like `db2`.`tablename`; 
Questions connexes