GreatGleb
@GreatGleb
Разработчик

Почему не записываются данные в БД, UPDATE не работает?

Пробовал записывать данные с помощью следующих команд:
DB::statement('UPDATE product SET name = "' . $row['name'] . '" WHERE reference="' . $row['reference'] . '";');

Product::where('reference', $row['reference'])->first()->update($data);
      
$huynia = Product::where('reference', $row['reference'])->first();
$huynia->name = $row['name'];
$huynia->save();


данные читает нормально, а вот в БД ничего не записывается, при этом из phpmyadmin запросы нормально обрабатываются.
  • Вопрос задан
  • 134 просмотра
Пригласить эксперта
Ответы на вопрос 2
ipatiev
@ipatiev Куратор тега PHP
Потомок старинного рода Ипатьевых-Колотитьевых
Если данные не обновляются в БД, то на это может быть три причины
1. Код добавления вообще не вызывался.
2. При добавлении произошла ошибка.
3. Данные добавились, в одну базу, а результат смотрим в другой.

Первый пункт должен проверить сам программист, никакой дядя с хабра за него это не сделает.
Второй в случае Ларавля отпадает, там, в отличие от самопальных поделок горе-программистов, с отображением ошибок все хорошо.
Остается только третий.
Ответ написан
Комментировать
php_cat_com
@php_cat_com
php-cat.com > программирую laravel + vue3
сначала привед изапрос чтобы ты получал нужную запись из бд ... сделал запрос и получил .. значит норм .. затем добавляй update()

и попробуй воспользоваться следующей конструкцией
DB::table('post')
->where('id', 3)
->update(['title' => "Updated Title"]);

Product::find(7)->update( [ 'name' => $name ] );
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы