我正在尝试将数据从一个数据库(MSSQL)导入另一个数据库(MySQL) 下面的代码对我有用,但现在我遇到了一个问题。 这是我的代码:
<?php
$country = "LV";
$DBServer="localhost";
$DBUser="root";
$DBPass="root";
$DBName="inventory";
$conn2 = new mysqli($DBServer, $DBUser, $DBPass, $DBName);
$query = 'TRUNCATE TABLE Items';
$result=$conn2->query($query);
mysqli_set_charset($conn2,"utf8");
$connectorpol = new NavisionExtractorPol();
$country = "POL";
$mssqlres = $connectorpol->getQueryResults('SELECT sbcode, bcode, descr FROM [dbo].[L_Items]');
var_dump($mssqlres);
while ($row = mssql_fetch_array($mssqlres)) {
$query1 = "INSERT INTO Items(sbcode, bcode, descr, country) VALUES ('" . $row["sbcode"] . "', '" .
$row["bcode"] . "', '" .
$row["descr"] . "', '" . $country . "')";
$result2=$conn2->query($query1);
if(!$result2){
echo $result2->error;
}
}
问题是并非所有来自MSSQL的行都是从7820导入的,只导入了7802。任何想法为什么?
答案 0 :(得分:0)
问题是我没有注意到我插入的行中的符号。 查询包含'符号,这样做会搞砸查询,使其无法执行。