J'ai deux types de base de données dans un serveur différent. Et est d'établir une connexion DB ci-dessous le script:connexion entre deux bases de données différentes
//DB 1
define("DBNAME","xx.xxx.xx.xxx:D:\DATABASE\OCS DATA.FDB");
define("DBUSER","USER");
define("DBPASS","USER");
$dbh = ibase_connect(DBNAME,DBUSER,DBPASS) or die(_ERROR15.": ".ibase_errmsg());
//DB 2
$dbc=mysql_connect(_SRV, _ACCID, _PWD) or die(_ERROR15.": ".mysql_error());
mysql_select_db("qdbase") or die(_ERROR17.": ".mysql_error());
à côté, j'ai une requête pour insérer des données dans un autre DB:
//if structure of the both tables are same then...
$sql = "insert into database1.member select * from database2.member";
//if structure of both tables are not same then
$sql = "Insert into database1.member select columnname1,columnname2 ".
"from database2.member";
si cette requête peut être utilisée pour la condition comme ci-dessus, qui ont deux types de DB différents? si c'est le cas, quelle partie doit être changée?
while ($ibase_row = ibase_fetch_assoc($rResult)){
$ins = array();
foreach ($ibase_row as $col => $val){
$ins[$col] = mysql_real_escape_string($val);
}
$mysql_insert = "INSERT INTO qdbase.table SET ".implode(',', $ins);
$res = mysql_query($mysql_insert, $dbc) or die();
}
Vous pouvez utiliser une couche d'abstraction de base de données comme Zend_Db, elle fait partie de [Zend Framework] (http://www.zendframework.com). – Phliplip