我正在努力从一台服务器上的一个数据库连接到另一台服务器上的另一个数据库获取数据。
这是针对oracle数据库
我从阵列中的一个数据库中获取记录,然后将这些记录一个接一个地处理以发送到另一个数据库。对于较少数量的记录,它工作正常,但是对于大量数据,它却要花费大量时间
示例代码
$qry = "SELECT NAME FROM EMPLOYEE" ;
$prs = oci_parse($conn1,$qry);
$exec = oci_Execute($prs);
if(!$exec)
{
$e = oci_error($prs);
echo json_encode($e);
return;
}
else
{
$hasdata = oci_fetch_all($prs,$data["EMPLOYEES"],null,null,OCI_FETCHSTATEMENT_BY_ROW);
if($hasdata!=0)
{
foreach($data["EMPLOYEES"] as $adata => $row)
{
$qry1 = "INSERT INTO EMPLOYEE(NAME) VALUES (:NAME)";
$prs1 = oci_parse($conn2,$qry1);
oci_bind_by_name($prs1,":NAME",$row["NAME"]);
$exec = oci_execute($prs1,OCI_NO_AUTO_COMMIT);
if(!$exec)
{
echo json_encode($e);
oci_rollback($conn2);
return;
}
oci_free_statement($prs1);
}
}
}
有没有直接的方法可以将所有提取的记录一次插入另一个数据库。