sql server 字段设为“允许空”这个属性有什么实际作用?

来源:百度知道 编辑:UC知道 时间:2024/06/23 21:50:42
不允许空插入NULL值就会出错,那么全部字段都允许空不就得了?安排这个字段属性有什么实际作用呢?我看动网论坛的数据库字段基本上都允许空,除了主键。

我想到的只有一个:在使用很多函数时变量是不能为空的,像server.htmlencode()参数也不能为NULL,除了这个外,还有什么作用?
回布鱼:“全允许空的话,可能会因为人为遗忘输入而导致错误”这个我知道,问题是因为不允许空而导致错误,一方面程序就不会再运行下去,另一方面可能还会把字段名暴露出来给黑客服务。我觉得防止忘记输入的办法是检验,而不是在数据库上不允许空,因为这个显示的是数据库错误信息而不是提示信息,用户看不懂那些代码还是不知道该怎么办。另外,忘记输入也是会取得空值的,而不是NULL,所以实际上也不会导致错误。

从业务逻辑上讲,很多数据我们要求是必须的

全允许空的话,可能会因为人为遗忘输入而导致错误

-------------
数据库不一定是作为网站或程序的支持
它单独也可以用的
在程序中当然需要另外做错误处理