Синтаксическая ошибка или нарушение доступа: 1064 У вас ошибка в синтаксисе SQL;это соответствует версии вашего сервера MySQL для правильного синтаксиса

#php #mysql #laravel #migration

Вопрос:

 public function up()
    {
        Schema::table('coupons', function (Blueprint $table) {
            $table->date('expiry_date')->default(DB::raw('CURRENT_DATE'));
        });
    }
 

ОсветитьБаза данныхИсключение запроса

SQLSTATE[42000]: Синтаксическая ошибка или нарушение доступа: 1064 У вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, на наличие правильного синтаксиса для использования рядом с «CURRENT_DATE» в строке 1 (SQL: изменить таблицу coupons добавить expiry_date дату, не равную нулю по умолчанию CURRENT_DATE)

Комментарии:

1. Я не верю, что в MySQL есть CURRENT_DATE заполнитель. dev.mysql.com/doc/refman/8.0/en/timestamp-initialization.html

2. да.только заполнитель метки ТЕКУЩЕГО ВРЕМЕНИ

Ответ №1:

Пожалуйста, попробуйте этот код:

 $table->date('expiry_date')->default(Carbon::now());
 

Комментарии:

1. это решит мою проблему. Спасибо