为什么我应该使用/不使用一个可以为null的字段Laravel-MySQL


Why should i use/not-use a nullable field Laravel - MySQL

我的mySQL数据库中有一个Address table,其中包含一些字段。

在我的表单上,我要求用户输入这些字段的值。但street field is not required。所以,当我的表格被提交时,我的数据库中的Column Street只是空的。在不将列设置为接受NULL的情况下,这可以很好地工作并且不会出现错误。

所以我的问题是:

将Street列设置为null有什么好处?

示例迁移(Laravel)不可为null:

$table->string('street');

示例使用可为null的进行迁移

$table->string('street')->nullable();

两者都很好。

在可能的情况下使用显式而不是隐式是一种很好的做法。所以我会使用nullableis_null()来检查null。

使用这种方法,您可以获得更少的错误、更可读的代码等。