Mysql SQL更新未更新
上传csv文件后,我试图将其内容插入数据库表。我有一个疑问:Mysql SQL更新未更新,mysql,database,Mysql,Database,上传csv文件后,我试图将其内容插入数据库表。我有一个疑问: $connect = mysql_connect("localhost","root",""); mysql_select_db("dbtest",$connect); //get the file $handle = fopen($filename,"r"); do { if (isset($data[0])) { $data0 = mysql_real_escape_string($dat
$connect = mysql_connect("localhost","root","");
mysql_select_db("dbtest",$connect);
//get the file
$handle = fopen($filename,"r");
do {
if (isset($data[0])) {
$data0 = mysql_real_escape_string($data[0]); //rcode
$data1 = mysql_real_escape_string($data[1]); //pcode
$data2 = mysql_real_escape_string($data[2]); //mcode
$data3 = mysql_real_escape_string($data[3]); //bcode
$data4 = mysql_real_escape_string($data[4]); //ecode
$data5 = mysql_real_escape_string($data[5]); //filetype
$data6 = mysql_real_escape_string($data[6]); //rec_count
$data7 = mysql_real_escape_string($data[7]); //gen_count
$data8 = mysql_real_escape_string($data[8]); //qc_count
$data9 = mysql_real_escape_string($data[9]); //be_count
$data10 = mysql_real_escape_string($data[10]); //trn_count
$query = "INSERT INTO tbltest(rcode,pcode,mcode,bcode,ecode,filetype,rec_count,
gen_count,qc_count,be_count,trn_count) VALUES ('$data0','$data1','$data2',
'$data3', '$data4', '$data5', '$data6', '$data7', '$data8', '$data9', '$data10')
ON DUPLICATE KEY UPDATE rec_count=values(rec_count),gen_count=values(gen_count),
qc_count=values(qc_count), be_count=values(be_count), trn_count=values(trn_count)";
mysql_query ($query,$connect) ;
}
} while ($data = fgetcsv($handle,1000,"|"));
它工作得很好,但随着数据库的重新构造,我只需要更新数据库表,因为rcodetofiletype
已经有值,我只需要将rec\u count的值插入trn\u count
。所以我的第一个查询插入到。。。重复钥匙更新时
已更改为仅更新。于是我就这样做了:
$query = "UPDATE tbltest SET (rec_count='$data6', gen_count = '$data7',
qc_count = '$data8', be_count = '$data9', trn_count= '$data10') WHERE
(rcode = '$data0', pcode = '$data1', mcode = '$data2', bcode = '$data3',
ecode = '$data4', filetype = '$data5')";
我现在的问题是,我的UPDATE
似乎不起作用,因为它不更新数据库表。当我这样做的时候
$query = "UPDATE tbltest SET rcode = '5'";
数据库正在更新中。当我尝试
echo$query时代码>,回声响应正确的数据(来自csv)。我就是不明白为什么它不把这些数据插入数据库。请帮忙。谢谢您的SQL语法不正确。该声明应该是这样的
UPDATE tbltest
SET rec_count='...', gen_count = '...', ...
WHERE rcode = '...' AND pcode = '...' AND ...
请参阅。现在这样做,我稍后会更新。谢谢你的回答。