Сделать столбец недействительным в миграции Laravel

Я пишу переход для создания определенных столбцов в таблице nullable прямо сейчас. Для функции "вниз" я, конечно, хочу снова сделать эти столбцы not nullable. Я просмотрел конструктор компоновки схемы, но не смог увидеть способ сделать это.

Любая помощь будет оценена.

Ответ 1

До Laravel 5 не было никакого родного способа Laravel изменить существующий столбец таблицы с помощью построителя схемы. Вам нужно будет использовать необработанные запросы.

Однако, с Laravel 5 вы можете использовать:

$table->...->nullable(false)->change();

Ответ 2

Как и в Laravel 5, можно отменить это изначально - просто передайте false как аргумент nullable().

например.

$table -> string('foo') -> nullable(false) -> change();

Ответ 3

приведенная ниже информация предназначена для SQL
Сначала используйте приведенный ниже код

UPDATE [Table] SET [Column]=0 WHERE [Column] IS NULL

чем запустить этот код

ALTER TABLE [Table] MODIFY [Column] INTEGER NOT NULL