РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
122 of 1392 menu

Метод change

Метод change применяется к объекту схемы в миграциях Laravel и позволяет изменить существующие столбцы таблицы. Он используется вместе с методами определения типов полей для модификации атрибутов столбцов, таких как тип данных, длина, возможность принимать NULL значения и другие свойства.

Синтаксис

<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; return new class extends Migration { public function up(): void { Schema::table('table_name', function (Blueprint $table) { $table->integer('column_name')->change(); }); } public function down(): void { Schema::table('table_name', function (Blueprint $table) { $table->string('column_name')->change(); }); } }; ?>

Пример

Давайте изменим тип поля 'age' с 'integer' на 'bigInteger':

<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; return new class extends Migration { public function up(): void { Schema::table('users', function (Blueprint $table) { $table->bigInteger('age')->change(); }); } public function down(): void { Schema::table('users', function (Blueprint $table) { $table->integer('age')->change(); }); } }; ?>

Пример

Давайте сделаем поле 'email' nullable:

<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; return new class extends Migration { public function up(): void { Schema::table('users', function (Blueprint $table) { $table->string('email')->nullable()->change(); }); } public function down(): void { Schema::table('users', function (Blueprint $table) { $table->string('email')->nullable(false)->change(); }); } }; ?>

Пример

Давайте изменим длину строкового поля 'name' с 255 на 100 символов:

<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; return new class extends Migration { public function up(): void { Schema::table('users', function (Blueprint $table) { $table->string('name', 100)->change(); }); } public function down(): void { Schema::table('users', function (Blueprint $table) { $table->string('name', 255)->change(); }); } }; ?>

Смотрите также

  • метод table,
    который определяет таблицу для изменения
  • метод nullable,
    который делает поле допускающим NULL значения
  • метод renameColumn,
    который переименовывает столбец в таблице
  • метод dropColumn,
    который удаляет столбец из таблицы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить