加载XML本地填充:REPLACE子句在phpMyAdmin中工作,但不从PHP脚本中工作

加载XML本地填充:REPLACE子句在phpMyAdmin中工作,但不从PHP脚本中工作,php,mysql,sql,Php,Mysql,Sql,下面的代码在PHP中工作。我看到我的“加载成功”回音 $sql = " LOAD XML LOCAL INFILE 'test.xml' INTO TABLE test ROWS IDENTIFIED BY '<row>' "; if (mysqli_query($dbc, $sql)) { echo "Load Successful"; } else { echo "Load Error"; } $sql=” 加载XML本地内嵌“test.XML” 入表测试 由

下面的代码在PHP中工作。我看到我的“加载成功”回音

$sql = "
LOAD XML LOCAL INFILE 'test.xml'
INTO TABLE test
ROWS IDENTIFIED BY '<row>'
";

if (mysqli_query($dbc, $sql)) {
    echo "Load Successful";
} else {
    echo "Load Error";
}
$sql=”
加载XML本地内嵌“test.XML”
入表测试
由“”标识的行
";
if(mysqli_查询($dbc,$sql)){
回显“加载成功”;
}否则{
回显“加载错误”;
}
如果我在phpMyAdmin GUI中提交,则下一个位有效:

LOAD XML LOCAL INFILE 'test.xml'
REPLACE
INTO TABLE test
ROWS IDENTIFIED BY '<row>'
加载XML本地内嵌'test.XML'
代替
入表测试
由“”标识的行
为什么下面的代码在PHP中不起作用??我收到了“加载错误”回音

$sql = "
LOAD XML LOCAL INFILE 'test.xml'
REPLACE
INTO TABLE test
ROWS IDENTIFIED BY '<row>'
";


if (mysqli_query($dbc, $sql)) {
    echo "Load Successful";
} else {
    echo "Load Error";
}
$sql=”
加载XML本地内嵌“test.XML”
代替
入表测试
由“”标识的行
";
if(mysqli_查询($dbc,$sql)){
回显“加载成功”;
}否则{
回显“加载错误”;
}

非常困惑。显然遗漏了一些简单的东西。任何指点都将不胜感激。正在努力调试。

为了解决这个问题,我尝试在加载数据之前先从PHP中删除表中的所有内容,而不使用replace子句

问题解决了。我试图使用的数据库用户没有删除权限


REPLACE需要DELETE特权。

为了避免这个问题,我尝试在加载数据之前先从PHP中删除表中的所有内容,而不使用REPLACE子句

问题解决了。我试图使用的数据库用户没有删除权限

REPLACE需要删除权限