[英]how to select from one database and insert into another Database in a Single query with different Database connections in php
mysql_connect("localhost","root","");
mysql_select_db("database1");
mysql_query("INSERT INTO database2.categories (category_name,description,group_id,created)
SELECT table1.name, table1.description, 12, UNIX_TIMESTAMP()
FROM GiveArang_categories Where `p_id`= '225' ");
我需要將數據插入從第一個數據庫中選擇的第二個數據庫中。 這兩個數據庫具有不同的連接。 它需要在php中完成一次查詢。
(我知道)執行此操作的唯一方法是通過兩個單獨的連接。
像這樣:
mysql_connect("localhost","root","");
mysql_select_db("database2");
mysql_query("INSERT INTO database2.categories (category_name,description,group_id,created)");
mysql_close();
mysql_connect("localhost","root","");
mysql_select_db("database1");
mysql_query("SELECT table1.name, table1.description, 12, UNIX_TIMESTAMP() FROM GiveArang_categories Where `p_id`= '225' ");
mysql_close();
不幸的是,在MySql中沒有等效的Oracle dblink(這是在Oracle數據庫中的單個查詢中連接到另一個數據庫所需要的)。
另請參閱此以獲取更多信息。
您可以彈出一個“ MySQL代理服務器”,使其位於服務器和數據庫框之間,這將使您將它們視為位於同一服務器上。 然后,您可以使用databasename.tablename
您的查詢中通過相同的連接,以確定您的不同的數據庫。
如果兩個數據庫都在同一台mysql服務器上,則可以這樣記錄:
mysql_connect("localhost","root","");
mysql_query("INSERT INTO database2.categories (category_name,description,group_id,created)
SELECT database1.table1.name, database1.table1.description, 12, UNIX_TIMESTAMP()
FROM database1.GiveArang_categories Where database1.GiveArang_categories.p_id= '225' ");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.