我已经编写了以下代码:
$sql="INSERT INTO donate (amount, reward) VALUES ('$amount', '$reward') WHERE id = ('$id')";
但我得到了这个错误:
错误:您的SQL语法有错误;查看手册与您的MySQL服务器版本相对应,以便使用正确的语法在第1行的'WHERE id=('19')'附近
我不知道我做错了什么,有人能帮我吗?
不能使用WHERE子句执行INSERT。如果您需要WHERE条件,则需要执行UPDATE
。
您可以使用:
$sql="UPDATE donate SET amount='$amount', reward='$reward' WHERE id = '$id'";
您要的是UPDATE
而不是INSERT
INSERT
语法不能有WHERE子句。只有当您使用INSERT INTO...SELECT
语句时,您才会发现INSERT有WHERE子句。
你可以试试
$sql="UPDATE donate SET amount='" . $amount. "', reward='" .$reward. "' WHERE id='" .$id. "'";
当您在插入记录时,该记录在数据库表中不可用,因此您不能与where一起使用。
其次,您只在现有数据库记录(如UPDATE或DELETE记录)上使用where cause。。。。。
我希望能帮助你