浅谈null
来源:互联网 发布:手机淘宝注册 编辑:程序博客网 时间:2024/06/05 09:35
前言:
我们平时对SQL的数值处理的过程中,经常会纠结一个问题,要不要设置为null?那么null到底是什么意思?在这篇文章中,我将为大家简单的介绍一下我们使用的null。
第一,定义
Null的本意是指,空的,无结果或空集合。NULL 值是遗漏的未知数据。默认地,表的列可以存放 NULL 值。null是未知的或不适用的值的占位符
第二,SQL中的null
如果表中的某个列是可选的,那么我们可以在不向该列添加值的情况下插入新记录或更新已有的记录。这意味着该字段将以 NULL 值保存。
第三,图解:
从图中可以看出我的实验类型:
数据类型为整形时,为null的情况;
数据类型为字符串,为null的情况;
一个元组的数据都为null的情况;
数据类型为整形时为空的情况(在数据库中自动默认为0);
数据类型为字符串时为空的情况;
还有数据库填写一个元组的数据时,在下一行自动生成的null元组。
我们通过使用SQL语句,在数据库中查询来一一实验
1、is null与=null
这两张图,说明,is null与=null是不一样的,而且null不是一种数据类型。但是,null并不表示空,它是已经占了位置的,只是该位置的内容为null;
2、null在整型和字符串类型中
Addmoney的数据类型为整形,RechargeTime的数据类型也为整形,都可以设置为null,null可以为任何数据类型占位,更说明它不专属某个数据类型。
3、null和0
此时,AddMoney的数据类型为整型,我们的查询条件为AddMoney=0,只查到了一条数据,说明,null与0是不同的;(其实是无法比较 NULL 和 0;它们本来就是不等价的。)
4、null和‘’
从这张图中,可以看出“”和null也是不一样的。“” 是指长度为0的字符串。所以,我们不能写 integer a="",而只能写 string a=""。
第四,未解决问题:
不知道大家有没有注意到,我们向数据库中填充数据时,向第一个元组中填写数据,在下一行会自动出来一行全为null的元组。在SQL中刚生成的数据表也会有一全为null的一元组(不知道怎么描述这一行,暂时拿元组来替一下),如第一张表中的最后一条数据。我们在查询null时,并查询不到这一行“null”,这一行null的作用是什么呢?占了哪里的位置呢?
总结:
null是未知的或不适用的值的占位符
(菜鸟初次了解关于NUll的知识,如有不足或者需要补充的地方,希望读者不吝指教)
0 0
- 浅谈null
- 浅谈null
- 浅谈 Java 中的 null
- 浅谈oracle 空值null与'null',''
- 浅谈 Mysql Null与非Null
- 浅谈NULL、0、(void *)0
- 浅谈Oracle中的空值NULL
- 【C语言】浅谈strtok()与NULL
- getResourceAsStream 返回 null 解决经验浅谈
- 浅谈JavaScript的null和undefined
- 浅谈关于nil和 null区别及相关问题
- 浅谈关于nil和 null区别及相关问题(转)
- 浅谈Javascript中undefined和null的区别
- 浅谈JAVA中的空值与null的判断
- 浅谈关于nil和 null区别及相关问题
- 浅谈iOS 中 nil、Nil、null以及NSNull的区别
- 浅谈JavaScript中的undefined、null、0、""和false
- null
- Qt quick 实现bootstrap界面之标签控件
- Spark-项目中分析日志的核心代码
- Java 静态变量,静态函数,静态代码块,构造代码块
- Meanshift--聚类算法
- Ubuntu14.10 更新源
- 浅谈null
- hjr教程-汇编(二):指令操作地址和数据
- Java千百问_07JVM架构(001)_java内存模型是什么样的
- Vector源码注释,粗略理解
- 深入理解JVM03--内存分配与回收策略
- mysql慢查询分析
- 树的遍历
- Java的消息对话框
- 168. Excel Sheet Column Title