2016-12-06 6 views
1

Larael Multiple Data Вставка ОшибкаSQLSTATE [22007]: Недопустимый формат даты и времени: 1366 Некорректное целое значение: 'имя_столбца' в Laravel

SQLSTATE [22007]: Недопустимый формат даты и времени: 1366 Некорректное целое значение: '' для column 'unit_id' в строке 2 (SQL: insert в 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))

Но мое unit_id Поле в nullable(); Пожалуйста, помогите мне Здесь column_name=unit_id

+0

включать код PHP. – Beginner

ответ

0

null отличается, чем нет. Если вы хотите установить значение null в качестве значения, вы должны записать его в свой запрос:

... ('2016-12-06 06:56:01',27, null, '2016-12-06 06:56:01')) 

Также формат даты и времени неверен. Вы должны ввести его как строку.

+1

использование нулевой, но та же ошибка –

+0

я пытаюсь вставить с помощью нуль, но автоматический просмотр пустой или пустой же ошибка SQLSTATE [22007]: Недопустимый формат даты и времени: 1366 Неверное целочисленное значение: «» для столбца «unit_id» в строке 2 (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 6:56:01)) –

+0

@ Аль-Амин вы можете предоставить таблицу создать заявление пожалуйста – Jens

0

Вы используете unit_id, на который ссылаются блоки (id)?. Вы inputing на пустое значение для ключа Foregin ссылается column.use нулевой и не ''

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); 
+0

use null, но такая же ошибка –

+0

Проверьте, вставляете ли вы в себя все столбцы в таблице или измените запрос на это и попробуйте. Вставить в product_prices (created_at, product_id, unit_id, updated_at) значения (2016-12-06 06:56:01, 27, 1,2016-12-06 06:56:01); Вставить в product_prices (created_at, product_id, unit_id, updated_at) значения (2016-12-06 06: 56: 01,27, null, 2016-12-06 06:56:01); – Parithiban

0

Set 0 для unit_id перед тем запроса, если он пустой/пустой. См. Пример:

if(!isset($unit_id) || empty($unit_id)) $unit_id = 0; 
. 
. 
//insert query rest code 
+0

Спасибо, таким образом я уже могу решить проблему, но это не проблема, надеюсь, если нет лучшего решения, пожалуйста, предложите мне –

0

Просто у меня была такая же проблема, и в моем случае это была глупая ошибка в моем контроллере.

То, что я сделал, я вернулся весь объект, а не только ид, например, так:

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(); 

    }