您好,我昨天在这里遇到了这个问题,我真的不知道如何很好地使用这个网站,因为我是新人,所以我重新发布了。但我在这段代码中遇到错误,我认为它的更新查询包含语法错误。
//如果玩家记录已存在则更新
$result = mysql_query("UPDATE PlayerStat SET Position='$POS', Number='$NUM', Name='$PlyrName', Status='$Status', TDS='$TDS', INT='$INT', YDS='$YDS', RTG='$RTG', Team='$Team' WHERE Name='$PlyrName'");
echo mysql_error();
if (mysql_affected_rows()==0){
// Populates table if record is non existent
$result = mysql_query("INSERT INTO PlayerStat(`Position`, `Number`, `Name`, `Status`, `TDS`, `INT`, `YDS`, `RTG`, `Team`) VALUES ('$POS','$NUM','$PlyrName','$Status','$TDS','$INT','$YDS','$RTG','$Team')");
echo mysql_error();
}
错误信息
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 'INT='1', YDS='86', RTG='52.5', Team='ARI' WHERE Name='Bartel, Richard'' 附近使用的正确语法在第 1 行
最佳答案
INT 是 mysql 中的一个关键字(声明和整数),如果它是你的列名,你应该用反引号 (`) 括起来,如下所示:`INT`。
尽管并非在所有情况下都需要这些,但最好还是将它们放入
UPDATE
PlayerStat
SET
`Position` = '$POS',
`Number` = '$NUM',
`Name` = '$PlyrName',
`Status` = '$Status',
`TDS` = '$TDS',
`INT` = '$INT',
`YDS` = '$YDS',
`RTG` = '$RTG',
`Team` = '$Team'
WHERE
`Name` = '$PlyrName'
关于mysql - 更新否则插入 MySQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8320625/