SQL WHERE оператор не работает

Я написал следующий код:

$sql="INSERT INTO donate (amount, reward) VALUES ('$amount', '$reward') WHERE id = ('$id')";

но я получаю эту ошибку:

Ошибка: у вас есть ошибка в вашем синтаксисе SQL; проверьте руководство, которое
соответствует версии вашего сервера MySQL для правильного использования синтаксиса
около ‘WHERE ID = (‘ 19 ‘)’ в строке 1

Я понятия не имею, что я делаю неправильно, кто-нибудь может мне помочь с этим?

-1

Решение

Вы не можете сделать INSERT с предложением WHERE. Если вам нужны условия WHERE, вам нужно сделать UPDATE,

Вы можете сделать с:

$sql="UPDATE donate SET amount='$amount', reward='$reward' WHERE id = '$id'";
2

Другие решения

То, что вы просите, это UPDATE скорее, чем INSERT

0

INSERT синтаксис не может иметь предложение WHERE. Единственный раз, когда вы найдете INSERT с предложением WHERE, это когда вы используете INSERT INTO...SELECT заявление.

Ты можешь попробовать

$sql="UPDATE donate SET amount='" . $amount. "', reward='" .$reward. "' WHERE id='" .$id. "'";
0

Когда вы вставляете запись во время этой записи, она не доступна в вашей таблице базы данных, поэтому вы не используете где.

Во-вторых, вы используете, где причина только на существующей записи базы данных, как UPDATE или DELETE …..

Надеюсь на помощь тебе

0
По вопросам рекламы [email protected]