当前位置: 首页 > news >正文

oracle null 赋值,java和oracle 中NULL的使用

java和oracle 中NULL的使用

知识背景:

1、java中null 的定义及作用

(1)null是代表不确定的对象

Java中,null是一个关键字,用来标识一个不确定的对象。因此可以将null赋给引用类型变量,但不可以将null赋给基本类型变量。比如:int a = null;是错误的。Ojbect o = null 是正确的。

(2) null本身不是对象,也不是Objcet的实例。null本身虽然能代表一个不确定的对象,但就null本身来说,它不是对象,也不知道什么类型,也不是http://www.doczj.com/doc/6c44ce27192e45361066f56c.htmlng.Object的实例。在定义变量的时候,如果引用类型变量定义后没有给变量赋值,则Java在运行时会自动给变量赋值NULL。

(3)null的其他作用:a、判断一个引用类型数据是否null。用==来判断;b、释放内存,让一个非null的引用类型变量指向null。这样这个对象就不再被任何对象应用了。等待JVM 垃圾回收机制去回。

2、oracle中null的定义及作用

(1)NULL是数据库中特有的数据类型,当一条记录的某个列为NULL,则表示这个列的值是未知的、是不确定的。既然是未知的,就有无数种的可能性。因此,NULL并不是一个确定的值。

(2)判断一个字段是否为NULL,应该用IS NULL或IS NOT NULL,而不能用‘=’。对NULL 的判断只能定性,既是不是NULL(IS NULL/IS NOT NULL),而不能定值。简单的说,由于NULL存在着无数的可能,因此两个NULL不是相等的关系,同样也不能说两个NULL 就不相等,或者比较两个NULL的大小,这些操作都是没有意义,得不到一个确切的答案的。因此,对NULL的=、!=、>、=、<=等操作的结果都是未知的,也就算说,这些操作的结果仍然是NULL。

(3)ORACLE的null 有以下特点:

(a)oracle中null与0,空字符串,空格,包括null与null也是不等的;

(b) oracle中对null做算术运算结果仍然为null;

(c) 处理方法有nvl函数,比较方法是is null或者is not null;

(d) null不能被索引,比如select count(null) from dual的查询结果是0;

(e) null排序时比其他数据都大(索引默认是降序排列,小→大),所以NULL值总是排在最后。

相关文章:

  • lisp如何调用linux头文件,用lisp开发博客客户端
  • linux 查看服务器任务,细说linux学习--服务器系统查看以及定时任务
  • linux隔离内核使用某些CPU,isolcpu参数 隔离cpu使其不被自动调度(linux 修改boot参数)...
  • linux路径信息,linux 底层 基础命令 路径信息
  • Linux基础信息,Linux基础(用户信息)
  • 在linux下安装mongo数据库,Linux系统下安装MongoDB
  • linux5编辑文本,linux 学习5 文本编辑器 vim
  • c语言数字类型转字符类型,C语言的基本数据类型及数据类型转换
  • 李含光c语言程序设计教程百度云,C语言程序设计教程 李含光 郑关胜 清华大学出版社习题答案...
  • 个人密码管理程序c语言,密码管理系统C语言(8页)-原创力文档
  • c语言程序设计数字电位器,可编程数字电位器在AVR单片机中的应用
  • 编程语言与c语言转换,【转】一些变态的编程语言
  • android 位于底部的tab,GitHub - DevinFu/BottomTabBar: Android应用中位于底部的tab栏
  • android studio 程序包r不存在,Android Studio问题!无法解析符号R,找不到与...
  • 麒麟810鸿蒙内核移植,2K魅眼屏+鸿蒙OS系统+麒麟810 华为出大招了
  • [LeetCode] Wiggle Sort
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  •  D - 粉碎叛乱F - 其他起义
  • Hibernate【inverse和cascade属性】知识要点
  • PHP的类修饰符与访问修饰符
  • sessionStorage和localStorage
  • Xmanager 远程桌面 CentOS 7
  • 阿里云购买磁盘后挂载
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 动态规划入门(以爬楼梯为例)
  • 看域名解析域名安全对SEO的影响
  • 每个JavaScript开发人员应阅读的书【1】 - JavaScript: The Good Parts
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 写给高年级小学生看的《Bash 指南》
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • 智能合约开发环境搭建及Hello World合约
  • 最简单的无缝轮播
  • Hibernate主键生成策略及选择
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • 阿里云ACE认证之理解CDN技术
  • 如何正确理解,内页权重高于首页?
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • #DBA杂记1
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (ibm)Java 语言的 XPath API
  • (zhuan) 一些RL的文献(及笔记)
  • (二)hibernate配置管理
  • (四)TensorRT | 基于 GPU 端的 Python 推理
  • (循环依赖问题)学习spring的第九天
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • .NET 8.0 发布到 IIS
  • .Net Core 中间件验签
  • .NET Core日志内容详解,详解不同日志级别的区别和有关日志记录的实用工具和第三方库详解与示例
  • .net Stream篇(六)
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明
  • .NET项目中存在多个web.config文件时的加载顺序
  • .NET中使用Redis (二)
  • @html.ActionLink的几种参数格式