Larael複数データ挿入エラー
SQLSTATE [22007]:無効な日時形式:1366無効な整数値:行2の列 'unit_id'の ''(SQL:_
product_prices
_に挿入(_created_at
_、_product_id
_、_unit_id
_、_updated_at
_)値(2016-12-06 06:56:01、27、1,2016-12-06 06:56:01)、(2016-12-06 06:56:01、 27、、2016-12-06 06:56:01)))
しかし、nullable();
の_unit_id
_フィールドここで誰か助けてください_column_name=unit_id
_
nullは存在しない場合とは異なります。値としてnullを設定する場合は、クエリにnullを記述する必要があります。
... ('2016-12-06 06:56:01',27, null, '2016-12-06 06:56:01'))
また、日時の形式が間違っています。文字列として入力する必要があります。
null/emptyの場合、クエリの前にunit_id
に0を設定します。例を参照してください:
if(!isset($unit_id) || empty($unit_id)) $unit_id = 0;
.
.
//insert query rest code
Unit_idを使用していますが、units(id
)で参照されていますか?参照されている列のキーに空の値を入力しています。''ではなくnullを使用してください
insert into product_prices (created_at, product_id, unit_id, updated_at)
values (2016-12-06 06:56:01, 27, 1,2016-12-06 06:56:01),
(2016-12-06 06:56:01,27,null, 2016-12-06 06:56:01);
ちょうど同じ問題があり、私の場合、それは私のコントローラーのばかげた間違いでした。
私がやったのは、次のように、idだけではなくオブジェクト全体を返しました:
public function store($id, Request $request) {
$post = Post::find($id);
$comment = new Comment;
$comment->text = $request->comment;
$comment->post_id = $post; <--- HERE IS THE MISTAKE
$comment->post_id = $post->id; <--- HERE IS THE FIX
$comment->user_id = Auth::id();
$comment->save();
return back();
}