zoukankan      html  css  js  c++  java
  • 数据库中的字段NULL值和''

    每次操作数据库,都会遇到NULL和''的拦路虎,由于筛选条件模糊导致查询结果错误。
    String str1 = null; str引用为空
    String str2 = ""; str引用一个空串
    null没有分配内存空间,""分配了空间,因此str1还不是一个实例化的对象,而str2已经实例化。


    注意因为null不是对象,""是对象。NULL的确切意思是 "未知" 而不是 "空",所以比较的时候必须是 if(str1==null){...}和if(str2.equals("")){...}。


    对象用equals比较,null用等号比较。因此,如果str1=null;
    C#判断字符串采用string.IsNullOrEmpty()判断
    空 (NULL) 值表示数值未知。空值不同于空白或零值。没有两个相等的空值。比较两个空值或将空值与任何其它数值相比均返回未知,这是因为每个空值均为未知。


    在写入数据的时候,空字符串'' 也是一个确定的值,所以就算你定义了 NOT NULL 也可以被写入。


    就比如:
    1、NULL是处女,''是非处女,但目前单身
    2、NULL跟空值的区别,基本上就是0跟“没有”的区别。
    3、NULL是真空,而''是空气,二者的外在表现是一样的,都看不到
  • 相关阅读:
    elasticsearch 不能通过9200端口访问
    elasticsearch 2.0+ 安装 Marvel
    修改es最大返回结果数
    ElasticSearch的Marvel更新license
    python-execjs(调用js)
    爬取豆瓣电影排名的代码以及思路
    docker的安装
    mysql主从同步
    Docker配置yapi接口
    第24课
  • 原文地址:https://www.cnblogs.com/dengshiwei/p/4258635.html
Copyright © 2011-2022 走看看