列可为空性/可选性:NULL与NOT NULL

Tom*_*Tom 2 mysql database-design data-modeling

是否有支持或反对设置某些字段为理由,NULLNOT NULL从主/外键字段在MySQL表,分开?

Nat*_*lor 5

这完全取决于您的域名,说实话.从功能上讲,它对数据库引擎几乎没有什么影响,但如果您希望拥有一个定义良好的域,通常最好让数据库和应用程序层镜像您对用户的要求.

如果用户输入"显示名称"是否属实,那么无论如何都要将该列标记为可为空.另一方面,如果您要求"显示名称",则应在数据库中将其标记为非null,并在应用程序中强制执行约束.通过加倍约束,您可以确保在前端更改时,域仍然是完全合格的.