При переносе базы данных отображается ошибка Синтаксическая ошибка или нарушение доступа: 1067 недопустимое значение по умолчанию для ‘domain_status’

#database #laravel #migration #database-migration #laravel-7

#База данных #laravel #миграция #база данных-миграция #laravel-7

Вопрос:

введите описание изображения здесь

Я не знаю, как это решить

 use IlluminateDatabaseMigrationsMigration;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateSupportFacadesSchema;

class CreateDomainsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return voidzz
     */
    public function up()
    {
        Schema::create('domains', function (Blueprint $table) {
            $table->id();
            $table->integer('user_id')->nullable();
            $table->string('domain')->collate('utf8_bin')->nullable();
            $table->string('google_domain')->collate('utf8_bin')->nullable();
            $table->string('location')->collate('utf8_bin')->nullable();
            $table->string('device')->collate('utf8_bin')->nullable();
            // $table->string('Hl')->nullable();
            // $table->string('Gl')->nullable();
            $table->string('hl')->collate('utf8_bin')->nullable();
            $table->string('gl')->collate('utf8_bin')->nullable();
            $table->integer('domain_status')->default('active')->nullable();
            $table->integer('update_frequency')->nullable();
            $table->timestampsTz();
        });
    }
    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('domains');
    }
}
 

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

1. пожалуйста, поделитесь кодом миграции create_domains_table

Ответ №1:

Вы определяете domain_status как int столбец, но по умолчанию используется строка с именем active . Это не сработает.

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

1. Какую строку я должен определить здесь?

2. Если это an integer , вы можете использовать ->default(0)

3. @AnvitaRastogi: вы должны определить, что ожидают ваши программы. На самом деле вы должны знать, что вы хотите для этого столбца — строку или число.