SQLSTATE [22007]: неверный формат даты и времени: 1366 неверное целочисленное значение - PullRequest
0 голосов
/ 28 октября 2018

SQLSTATE [22007]: недопустимый формат даты и времени: 1366 Неверное целочисленное значение: «Ходьба» для столбца «excercise_type» в строке 1

 public function up()
{
    Schema::table('diabetic_records', function (Blueprint $table) {
        $table->unsignedInteger('user_id')->nullable()->after('id');
        $table->decimal('glucose_level',5,2)->nullable()->after('user_id');
        $table->string('glucose_level_time')->nullable()->after('glucose_level');
        $table->string('food_name')->nullable()->after('glucose_level_time');
        $table->integer('food_amount')->nullable()->after('food_name');
        $table->string('treatment')->nullable()->after('food_amount');
        $table->string('medication_name')->nullable()->after('treatment');
        $table->decimal('medication_dose',6,2)->nullable()->after('medication_name');
        $table->string('medication_time')->nullable()->after('medication_dose');
        $table->integer('excercise_type')->nullable()->after('medication_time');
        $table->integer('excercise_duration')->nullable()->after('excercise_type');
    });
}

Ответы [ 2 ]

0 голосов
/ 28 октября 2018

Я только что нашел решение этой проблемы, попросив эту проблему у моего старшего брата.во-первых, мой тип данных для упражнения - int, и я помещаю в него символы (строки).

$table->integer('excercise_type')->nullable()->after('medication_time');

view:

<select class="custom-select d-block w-100" name="excercise_type" id="excercise_type" required>
              <option selected="selected" >Walking</option>
              <option >Running</option>
              <option >Cycling</option>
              </select>

до устранения ошибки код выглядит так, чтоя набрал

теперь давайте начнем разрешать часть этой ошибки

1) Прежде всего присвойте значения типа 1,2,3 вашим опциям в теге select в вашем представлении.

<select class="custom-select d-block w-100" name="excercise_type" id="excercise_type" required>
              <option selected="selected" value="1">Walking</option>
              <option value="2">Running</option>
              <option value="3">Cycling</option>
              </select>

2) просто зайдите в вашу конфигурационную папку и создайте файл с именем constant.php.

3) теперь верните массив и напишите имя вашего поля ввода и присвойте им значения вашегополе опций, которое вы пишете на стороне вашего вида, вот так.

<?php
return[
 'EXERCISE_TYPE_WALKING' => '1',
 'EXERCISE_TYPE_RUNNING' => '2',
' EXERCISE_TYPE_CYCLING' => '3',
];

?>

Я надеюсь, вы получите помощь по этому вопросу.

0 голосов
/ 28 октября 2018

Тип данных excercise_type в базе данных должен быть установлен в DATETIME.Измените его на int (11).И значение должно быть целым числом, а не строкой, т.е. Walking.Это может решить вашу проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...