Mysql:允许Null意思

Joh*_*old 15 mysql null

什么"Allow Null"意思,它做什么?

Spu*_*ley 32

为了理解"允许空"的含义,您需要NULL了解它是什么,并理解它与零或空字符串不同.

NULL是SQL中的特殊值.它表示不存在的数据.这与空白的数据不同.

在MySQL中创建表时,它允许您指定是否允许使用字段NULL.如果指定"允许空",则可以NULL在这些字段中创建包含值的记录.

在某些情况下,这可能对您有用.例如,"是/否"字段可能是布尔值,但如果用户未指定其首选项,则可能需要设置NULL为指示此而不是默认为"是"或"否".

但在许多情况下,允许NULL可能会有问题.设置的字段NULL可能会在查询中产生意外结果,因为NULL在所有情况下都不遵循与其他值相同的规则.例如:如果查询上面的示例字段WHERE myfield != 1,您可能希望得到所有不等于1的记录的结果.但是NULL不会返回字段; 你需要为他们写一个特例.

NULL在执行JOIN某些结果没有要加入的记录的查询时,也会将其用作默认值.连接表中的未知字段都将设置为NULL.

通常,如果您不确定如何处理"允许空",则最安全的选项是将其设置为不允许空值.

有关详细信息,请参阅SQL中的NULLWikipedia条目.

希望有所帮助.