Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

Доброго времени суток, о светлейшие умы форума, поясните сию приблуду в модели товара, зачем удалять а потом опять записывал, не проще просто обновить запись ? 

$this->db->query("DELETE FROM " . DB_PREFIX . "product_to_store WHERE product_id = '" . (int)$product_id . "'");

if (isset($data['product_store'])) {
  foreach ($data['product_store'] as $store_id) {
    $this->db->query("INSERT INTO " . DB_PREFIX . "product_to_store SET product_id = '" . (int)$product_id . "', store_id = '" . (int)$store_id . "'");
  }
}
Надіслати
Поділитися на інших сайтах

зачем удалять а потом опять записывал, не проще просто обновить запись ?

Был товар привязан к 10 магазинам (в базе в указанной таблице маппинга - 10 записей), после редактирования - к 4.

Распишите алгоритм, какие записи обновить, какие удалить.

  • +1 1
Надіслати
Поділитися на інших сайтах


Был товар привязан к 10 магазинам (в базе в указанной таблице маппинга - 10 записей), после редактирования - к 4.

Распишите алгоритм, какие записи обновить, какие удалить.

Вот про это я не подумал, спасибо !

Надіслати
Поділитися на інших сайтах

Распишите алгоритм, какие записи обновить, какие удалить.

 

Пробежаться по циклу селектом и в случае отсутствия удалить/добавить ненужное/нужное..

N запросов + N replace/insert/update

 

Но зачем, если можно удалить ( 1 запрос) а потом N insertов, причем безошибочных

И надо учест, что такие операции не часто делаются., так что беспокоиться об переполнении  int(11) не надо беспокоиться.

Надіслати
Поділитися на інших сайтах

Как часто?

Раз в день?

Стоит ли задумываться о... размере id записи, если, грубо, существует foregin key (конечно, не существует)

Надіслати
Поділитися на інших сайтах

Я же не о размере задумываюсь, а о потерянных записях.

То, что в около-денежном и учётном проекте нет innodb, foreign keys и транзакций - стыдобища, разумеется. Но чинить это даже в масштабах крутой (большой и дружной) сборки - себе дороже.

Надіслати
Поділитися на інших сайтах


Как часто?

Раз в день?

Некоторые обожают остатки и цены чуть ли не ежедневно "синхронизировать" через экспорт-эксель-импорт, пересоздавая базу каждый раз. А магазинов с кол-вами меньше пары тысяч товаров я уже давно не видел.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.