MYSQL Обновление нескольких столбцов с использованием переменных - PullRequest
14 голосов
/ 20 июля 2011

Я использовал этот запрос, чтобы вставить все свои значения в эту базу данных:

INSERT INTO products ($fields) VALUES ($values)

Однако я пытаюсь использовать тот же формат для ОБНОВЛЕНИЯ:

UPDATE products SET ($fields) VALUES ($values) WHERE sku = '$checksku'

... и получаю синтаксическую ошибку:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '('product,make,model,' at line 1

Я не могу понять это. Буду признателен за любую помощь. Благодаря.

Ответы [ 3 ]

30 голосов
/ 20 июля 2011

Синтаксис UPDATE отличается от синтаксиса INSERT.Примером ОБНОВЛЕНИЯ будет:

"UPDATE products SET field1 = 'value1', field2 = '$val2', field3 = 5 WHERE sku = '$checksku'"
0 голосов
/ 10 июня 2018
INSERT INTO products ($fields) VALUES ($values) ON DUPLICATE KEY UPDATE field = VALUES(field), ...

Не забыл про уникальный или первичный ключ

0 голосов
/ 20 июля 2011

вам нужен =

UPDATE products SET ($fields) = $values WHERE sku = '$checksku'
...