在Laravel迁移中使列不能为空

我正在编写一个迁移,使表中的某些列现在可以为nullable 。 对于down函数,我当然想让这些列not nullablenot nullable 。 我查看了架构生成器文档 ,但看不到一个方法来做到这一点。

任何帮助,将不胜感激。

在Laravel 5之前,没有使用架构生成器来改变现有表列的Laravel本地方式。 你需要使用原始查询。

但是,从Laravel 5开始,您可以使用:

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

从Laravel 5开始,可以将其原生地反转 – 只需将false作为parameter passing给nullable()即可。

例如

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

以下信息是针对SQL的
先使用下面的代码

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

比运行这个代码

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