обновить запись, если существует, еще написать новую запись? - PullRequest
3 голосов
/ 15 апреля 2011

Я пытаюсь выполнить этот запрос, и когда он находит запись для $ serial, он может обновить ее.ИЛИ, если серийный номер не существует, он может написать новую запись.

Я получаю синтаксические ошибки, но мне кажется, что все в порядке.чертовски уверен, что на DUPLICATE KEY UPDATE стоит идти, но я что-то упустил ...

$query = "INSERT INTO `".$sys_id."` (serial, status) VALUES ('98745', 'active') ON DUPLICATE KEY UPDATE";
$result = mysql_query($query) or die(mysql_error());

1 Ответ

4 голосов
/ 15 апреля 2011

вам нужно указать, что нужно обновить ( см. Руководство )

так:

$query = "INSERT INTO `".$sys_id."` (serial, status) VALUES ('98745', 'active') 
           ON DUPLICATE KEY UPDATE status=VALUES(active)";

(я предполагаю, что ключ serial)

...