如何将数据从一个数据库表插入另一个数据库表?
我必须使用MySQL数据库DB1和DB2 ,DB1位于联机服务器上,而DB2位于本地计算机 (本地主机)上。现在我想使用SQL QUERY从DB1的名为db1_table的表中插入一些名为db2_table的数据表。 那么怎么可能呢?
我认为这对一个SQL Query来说是不可能的。 SQL查询只能在一台服务器上执行,并且他不知道第二台服务器。 因此,您必须使用应用程序执行此操作,或者必须使用MySql Workbench或PHPMyAdmin的导入和导出功能。
在这里你可以找到一个非常类似的问题:
插入不同服务器上的MySQL数据库
希望这会帮助你。
根据@Being Human的建议,可以创建2个同时连接,并写出一个查询 - 这将是理想的。 但下面的方法适用于我。
1:从在线服务器创建DB1
的转储文件
mysqldump -u <db_username> -h <db_host> -p db_name table_name > backup.sql
2:将dumpfile恢复到本地服务器和数据库(将恢复到同一个数据库)
mysql -u<db_username> -p DB_NAME < backup.sql
3:INSERT INTO db2_table
从db1_table
INSERT INTO DB2.db2_table (<col1>, <col2>, <col3>....)
SELECT <col1>, <col2>, <col3> ...
FROM db1_table;
确保由SELECT子查询返回的列db1_table
在地图入列db2_table
上一篇: How to insert data from one database table to another database table?
下一篇: Automatic update on a table, depending on values from different tables