По какой-то причине мой скрипт не удаляет существующие строки, когда я использую замену.
Я работаю над системой управления запасами, и я могу вызывать этот скрипт каждый час или около того, чтобы обновить базу данных:
REPLACE INTO inventory(username, sku,asin,set_price,inventory)
VALUES('trav','AEG5502','B00875JE0C','23.49','');
Но вместо удаления старой строки он создает новую строку с точно такой же информацией.
Я уверен, что это простая ошибка, но я был бы рад, если бы кто-нибудь мог мне помочь.
Дополнительная информация, в строке около 15 столбцов. Ни один из этих столбцов (username
, sku
, asin
, set_price,inventory
) не является primary key
, я не знаю, должно ли это быть так для заменить на работу, но я подумал, что упомяну об этом.
Благодарность
1 ответ
RTLM: http://dev.mysql.com/doc/refman/5.0 /en/replace.html replace
будет заменять только в том случае, если ЛЮБОЕ из используемых вами полей является основным или, по крайней мере, уникальным ключом в таблице. поскольку ни одно из ваших полей не заполнено, он просто вставляет
Похожие вопросы
Новые вопросы
php
PHP — это широко используемый язык сценариев общего назначения с открытым исходным кодом, мультипарадигмальный, динамически типизированный и интерпретируемый, изначально разработанный для веб-разработки на стороне сервера. Используйте этот тег для вопросов о программировании на языке PHP.