Laravelでデータベースのレコードの存在を確認し、なければInsertし、有ればUpdateでデータを変更したいので、Controllerに以下のコードを記載していますが、以下のようなエラーとなり実行できません。
どのように修正すればよいでしょうか?
php
1$sigdata = Sigdata::where('f_remid', $remid)->where('sig_name', $request->input($sig_field))->first(); 2if (! $sigdata) { 3 $sigdata = new Sigdata(); 4 $sigdata->f_remid = $remid; 5 $sigdata->sig_name = $request->input($sig_field); 6} 7$sig_field = 'sig_data' . $i; 8$sigdata->sig_data = $request->input($sig_field); 9$sigdata->save();
エラーは以下のとおりです。
php
1"message": "SQLSTATE[42S22]: Column not found: 1054 Unknown column 'id' in 'where clause' (SQL: update `sigdatas` set `sig_data` = data0,112, `upd 2ated_at` = 2017-10-03 23:14:48 where `id` is null)",
idを指定するようなエラーに見えますがどのように対応すればよいかわかりません。よろしくお願いします。
データは以下のようになっています。
SQL
1mysql> select * from sigdatas; 2+-------+---------+----------+-----------+---------------------+---------------------+ 3| sigid | f_remid | sig_name | sig_data | created_at | updated_at | 4+-------+---------+----------+-----------+---------------------+---------------------+ 5| 11 | 3 | signame0 | data0,111 | 2017-09-10 22:47:12 | 2017-09-10 22:47:12 | 6| 12 | 3 | signame1 | data1,111 | 2017-09-10 22:47:12 | 2017-09-10 22:47:12 | 7+-------+---------+----------+-----------+---------------------+---------------------+ 82 rows in set (0.00 sec)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/04 01:08