Magento 2: Как в этом случае работает Insert on Duplicate?
Я использую версию Magento 2.1.7. В моей таблице базы данных мне нужно создать строку / обновить строку на основе ItemNo и GroupNo группы. Обратитесь к изображению, чтобы увидеть пример структуры таблицы. Например, мне нужно обновить Qty на основе комбинации ItemNo и GroupNo. Если комбинация не существует, то необходимо создать новую строку.
И как это возможно, используя Insertonduplicate в запросе SQL?
1 ответ
После создания модели и модели ресурсов вы можете вставить дубликаты, используя метод загрузки (хотя и не рекомендуется).
$itemNo = 1000;
$model = $this->modelFactory->create();
$model->load($itemNo, "ItemNo (Field in DB)");
$model->addData([
"Item No" => $itemNo,
"Group NO" => 20,
"Qty" => 300
]);
$saveData = $model->save();
if($saveData){
echo "data saved sucessfully";
}
Это создает новую строку, если itemNo не существует в БД, и обновляет строку, если она есть