我有一个问题。我不太擅长这个。 :) 假设这是 DB anna_subscribers,我想在每次将此 .php 文件调用到 DB anna_newsletter 时复制此数据库。 我如何编辑这段代码,使其不会下载文件,而是将数据库复制到该服务器上的另一个数据库? 这是执行下载的文件代码:
<?
require_once('../../../../../initialize.php');
if(!$session->isLogedIn()) {
exit;
}
ini_set('memory_limit','16M');
$q=$db->get($db->query('SELECT sqlUrl, sqlDatabase, sqlUserName, sqlPassword, ID, importShopID, lastOrderUpdate FROM com_som_shops WHERE ID="3"'));
$dbhandle = new Database(false);
$dbhandle->open_connection(''.$q['sqlUrl'].'', ''.$crypt->decrypt($q['sqlUserName']).'', ''.$crypt->decrypt($q['sqlPassword']).'', ''.$crypt->decrypt($q['sqlDatabase']).'');
$dbhandle->query("SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'");
$db_un_chQ = $dbhandle->query("SELECT * FROM newsletter_subscriber WHERE subscriber_status='1' AND store_id='3' AND customer_id='0'");
$string="";
while($db_un_chR=$dbhandle->fetch($db_un_chQ)) {
$string.= $db_un_chR["subscriber_email"].",\n";
}
$dbhandle->close_connection();
header("Content-Type: text/plain; charset=utf-8");
header('Content-Disposition: attachment; filename="exportSubscrtiptionKondomanija_'.date("d.m.Y-H.i").'.txt"');
echo $string;
?>
我要用这样的东西来改变 ti 吗:
INSERT INTO anna_newsletter..subscribers
SELECT * FROM anna_subscribers..subscribers
数据库结构:anna_subscribers 有:
`ID``email``date_added`
数据库结构:anna_newsletter 有:
`id``userID``email``custom_fields``list``unsubscribed``bounced``bounce_soft``complaint``last_campaing``last_ares``timestamp``join_date``confirmed``messageID`
最佳答案
只需在查询中指定数据库:
INSERT INTO DESINATION_DATABASE.subscribers SELECT * FROM SOURCE_DATABASE.subscribers
关于php - 将数据库复制到服务器上的另一个数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28063649/