连接Oracle和mySQL的PHP
我正试图通过ODBC从Oracle获取一些数据到mySQL数据库。 然后在mySQL数据库中插入一些行。 我设法列出ORACLE中的行,但未能插入mySQL连接Oracle和mySQL的PHP,php,mysql,oracle,select,insert,Php,Mysql,Oracle,Select,Insert,我正试图通过ODBC从Oracle获取一些数据到mySQL数据库。 然后在mySQL数据库中插入一些行。 我设法列出ORACLE中的行,但未能插入mySQL $time_start = microtime(true); set_time_limit(10000); //ligação ODBC ORACLE $connect = odbc_connect("test", "test", "test"); $query = "select barcod, to_char(barfecgen
$time_start = microtime(true);
set_time_limit(10000);
//ligação ODBC ORACLE
$connect = odbc_connect("test", "test", "test");
$query = "select barcod, to_char(barfecgen, 'YYYY-MM-DD') as data, barnumuni, barcolnom, clicod from barcad where barcodreo = 1";
$result = odbc_exec($connect, $query);
$numOF = 0;
// Ligação mySQL
$con = mysql_connect("localhost","root","intranet");
if (!$con)
{
die('Erro de ligação mySQL: ' . mysql_error());
}
mysql_select_db("bd_test", $con);
?>
< table border="0" align="center" cellpadding="8" cellspacing="1">
< tr class="cabecalho_tabela">
< td bgcolor="#666666"><strong>#</strong></td>
< td bgcolor="#666666"><strong>Ordem de Serviço</strong></td>
< td bgcolor="#666666"><strong>Data entrada</strong></td>
< td bgcolor="#666666"><strong>Kg entrada</strong></td>
< td bgcolor="#666666"><strong>Artigo</strong></td>
< td bgcolor="#666666"><strong>Código do cliente</strong></td>
< /tr>
<?php
while(odbc_fetch_row($result)){
$of1 = odbc_result($result, 1);//Ordem de serviço
$of2 = odbc_result($result, 2);//Data de Entrada
$of3 = odbc_result($result, 3);//kg entrada
$of4 = odbc_result($result, 4);//Artigo
$of5 = odbc_result($result, 5);//Cliente
$numOF++;
$minhadata = substr(odbc_result($result, 2), 0, 4);
if ($minhadata == "2010") {
$corlinha = "linha_tabela_alt";
// insere registos
$mysql_query = ("INSERT INTO bd_test.tb_reclamacoes (data_entrada, ordem_servico, cliente, kg_entrada, artigo) VALUES ($of2, $of1, $of5, $of3, $of4)");
} else {
$corlinha = "linha_tabela";
}
?>
< tr class="<?php echo $corlinha; ?>">
< td align="righ t" bgcolor="#CCCCCC"><?php echo $numOF; ?></td>
< td bgcolor="#CCCCCC"><?php echo $of1; ?></td>
< td align="center" bgcolor="#CCCCCC"><?php echo $of2; ?></td>
< td align="right" bgcolor="#CCCCCC"><?php echo $of3; ?></td>
< td align="center" bgcolor="#CCCCCC"><?php echo $of4; ?></td>
< td align="right" bgcolor="#CCCCCC"><?php echo $of5; ?></td>
< /tr>
<?php
}
?>
< /table>
<?php
odbc_close($connect);
mysql_close($con);
$time_end = microtime(true);
$time = $time_end - $time_start;
echo "Tempo de Script: $time segundos\n";
如果您的某些字段是字符串或日期数据_entrada、artigo、cliente,您应该这样写:
$mysql_query = ("INSERT INTO bd_etmaganha.tb_reclamacoes (data_entrada, ordem_servico, cliente, kg_entrada, artigo) VALUES ('$of2', $of1, '$of5', $of3, '$of4')");
更好的是,使用mysql\u real\u escape\u string来确保字符串正确保存如果您的某些字段是字符串或日期数据\u entrada、artigo、cliente,您应该这样写:
$mysql_query = ("INSERT INTO bd_etmaganha.tb_reclamacoes (data_entrada, ordem_servico, cliente, kg_entrada, artigo) VALUES ('$of2', $of1, '$of5', $of3, '$of4')");
更好的是,使用mysql\u real\u escape\u string确保正确保存字符串我成功地尝试了这一点:
$query = ("INSERT INTO bd_etmaganha.tb_reclamacoes (data_entrada, ordem_servico, cliente, kg_entrada, artigo) VALUES ($of2, $of1, $of5, $of3, $of4)");
mysql_query($query); // u forget to execute query
我成功地尝试了这一点:
$query = ("INSERT INTO bd_etmaganha.tb_reclamacoes (data_entrada, ordem_servico, cliente, kg_entrada, artigo) VALUES ($of2, $of1, $of5, $of3, $of4)");
mysql_query($query); // u forget to execute query
…并在代码中添加正确的错误检查,在发布问题时引用特定的错误消息,删除不相关的信息,即上面示例中的所有HTML和Oracle代码…并在代码中添加正确的错误检查,在发布问题时引用特定的错误消息,并去掉不相关的信息,即上面示例中的所有HTML和Oracle代码