zoukankan      html  css  js  c++  java
  • Mysql字段属性应该尽量设置为not null

    除非你有一个很特别的原因去使用 NULL 值,你应该总是让你的字段保持 NOT NULL。这看起来好像有点争议,请往下看。

    所谓的NULL就是什么都没有,连都没有,在字符串中是结束符,但是在物理内存是占空间的,等于一个字节,而NULL就是连这一个字节都没有。在数据库里是严格区分的,任何数跟NULL进行运算都是NULL, 判断值是否等于NULL,不能简单用=,而要用IS NULL关键字。

    数据库的字段ID设为NOT NULL, 仅仅说明该字段不能为NULL, 也就是说只有在
    INSERT INTO table(ID) VALUES(NULL);
    这种情况下数据库会报错,而
    INSERT INTO table(ID) VALUES( ‘ ‘);
    这不能说明是NULL, 数据库系统会根据ID设的缺省值填充,或者如果是自增字段就自动加一等缺省操作。


    尽量避免NULL:应该指定列为NOT NULL,除非你想存储NULL。在MySQL中,含有空值的列很难进行查询优化,而且对表索引时不会存储NULL值的,所以如果索引的字段可以为NULL,索引的效率会下降很多。因为它们使得索引、索引的统计信息以及比较运算更加复杂。你应该用0、一个特殊的值或者一个空串代替空值。

  • 相关阅读:
    一个新的Activity跳转到带有Framgment的Activity页面
    安卓图片下载及存储
    安卓4.0以上 UDP 发送端
    安卓 service 后台运行,activity 启动和停止service
    安卓 BaseAdapter ListView和Button
    安卓点击两次返回键退出程序
    安卓 surfaceview 添加点击事件
    Mybatis
    Cookie
    AJAX原生代码
  • 原文地址:https://www.cnblogs.com/xiangkejin/p/9052381.html
Copyright © 2011-2022 走看看