Php 通过csv文件更新MySQL中的表
我必须通过Php 通过csv文件更新MySQL中的表,php,mysql,csv,Php,Mysql,Csv,我必须通过csv文件output.csv更新表cscart\u products 我已经创建了一个临时表(your\u temp\u表),并使用命令internaljoin更新了cscart\u products表(product\u code,amount) 执行以下代码时,MySQL会报告此错误: 用户更新失败:您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以了解第6行“更新cscart\u产品内部连接您的\u temp\u表上的\u temp\u表。amount=cs”附近使
csv
文件output.csv
更新表cscart\u products
我已经创建了一个临时表(your\u temp\u表
),并使用命令internaljoin
更新了cscart\u products
表(product\u code
,amount
)
执行以下代码时,MySQL会报告此错误:
用户更新失败:您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以了解第6行“更新cscart\u产品内部连接您的\u temp\u表上的\u temp\u表。amount=cs”附近使用的正确语法
有错误吗?SQL语法错误吗
<?php
$sql = "LOAD DATA INFILE 'output.csv'
INTO TABLE your_temp_table
FIELDS TERMINATED BY ','
(product_code, amount);
UPDATE cscart_products
INNER JOIN your_temp_table on your_temp_table.amount = cscart_products.amount
SET cscart_products.product_code = your_temp_table.product_code;";
$con=mysqli_connect("localhost","xxx","xxxx","xxxx");
// Check connection
if (mysqli_connect_error()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
};
$result = mysqli_query($con, $sql);
if (mysqli_affected_rows($con) == 1) {
$message = "The data was successfully added!";
} else {
$message = "The user update failed: ";
$message .= mysqli_error($con);
};
echo $message;
mysqli_close($con);
?>
在mysqli中,它们应该作为两个查询执行
$sql = "LOAD DATA INFILE 'output.csv'
INTO TABLE your_temp_table
FIELDS TERMINATED BY ','
(product_code, amount)";
$sql2 = "UPDATE cscart_products
INNER JOIN your_temp_table on your_temp_table.amount = cscart_products.amount
SET cscart_products.product_code = your_temp_table.product_code";
$result = mysqli_query($con, $sql);
$result = mysqli_query($con, $sql2);
或者,你必须使用