`

学会如何处理数据库中的null

阅读更多

Java数据库连接(JDBC)结果集类掩盖了一个微小的bug,如果你忘记了使用wasNull方法的话。关系数据库中的NULL值的概念和Java中null的值的概念相似,前者任何类型都可以为null,但是在Java中,基本数据类型不能为null。当要读取一个数据库域赋值给一个基本类型的时候(例如resultSet.getInt(1)),可能会造成问题。这样的例子已经让JDBC规范的制订者开始研究如何解决。

  当一个值通过如getInt、getLong、getFloat这样的getXxx方法从数据库中得到后,开发者可以调用wasNull()方法来找出其值是否为null。如果wasNull返回true,那么可以让开发者为基本类型选择使用合适的null值。GetXxx方法获得的值与JDBC的驱动紧密相关。

  例如,在某个数据库驱动中,它返回0,另一个也许返回那一列的缺省值,也许还有一个返回驱动在那一列读取的最后一个值。

  所以当你准备读取数据库中的NULL值的时候,要小心缺省值,你也许需要以下面的习惯编码:

int idx = resultSet.getInt(1); 

  if(resultSet.wasNull( )) 

  { 

  idx = -1; // this is our default value for idx 

  } 

 

分享到:
评论

相关推荐

    【千锋】一天学会MySQL数据库 学习手记.pdf

    总的来说,一天学会MySQL数据库是一个挑战性目标,需要学员掌握上述DQL、DML、DDL以及事务处理和权限控制等关键概念和操作。通过系统的学习,初学者可以在短时间内建立起数据库管理的基础,为进一步深入学习数据库...

    3小时学会Mysql and JDBC数据库

    在本资源中,我们将讨论 MySQL 和 JDBC 数据库相关的知识点,涵盖数据库的基本概念、 MySQL 的基本操作、数据库的设计和 MySQL 的数据类型等方面。 一、数据库的基本概念 * 数据库是用于存储和管理数据的软件系统...

    MySQL数据库基础与实例教程所有资源

    在学会了基本的数据库结构后,我们进入数据的增删改查(CRUD)操作。INSERT INTO语句用于插入新记录,DELETE FROM和UPDATE用于删除和修改记录,而SELECT是最常用的查询语句,可以搭配WHERE、GROUP BY、HAVING、ORDER...

    武汉理工大学 数据库实验报告

    【数据库系统原理与实践】 本实验报告主要涵盖了数据库系统的基础操作,通过武汉理工大学计算机科学与技术学院的学生在...通过实验,学生也学会了如何处理违反约束条件的情况,从而更好地理解和应用数据库管理的规则。

    hibernate使用中与各种数据库字段类型对应类型训练

    通过这次训练,你将深入理解Hibernate如何处理不同数据库字段类型,并学会如何在实际项目中灵活运用,提升开发效率和代码质量。记住,熟练掌握这些知识是成为一名高效Java开发者的必备技能之一。

    Oracle数据库案例教程_教师用书

    - **顺序控制语句实现更新员工工资**:理解GOTO语句和NULL语句的作用,学会在PL/SQL中控制代码的执行流程。 - **PL/SQL异常处理机制**:学会识别和处理常见的PL/SQL异常,理解TRY...CATCH...FINALLY结构在异常处理中...

    数据库 实验 答案(12章的)

    "数据库_实验五.doc"和"数据库_实验六.doc"可能会涉及到数据库的完整性约束和事务处理。完整性约束保证了数据的准确性和一致性,例如,通过设置NOT NULL、UNIQUE和FOREIGN KEY约束。事务是数据库操作的基本单位,它...

    数据库原理及应用》实验

    2. **掌握数据库和数据表的创建与删除**:学会使用SQL的`CREATE`、`ALTER`和`DROP`命令来创建、修改和删除数据库及数据表。 3. **掌握数据表的创建和数据记录的插入方法**:能够熟练使用SQL语句完成数据表的设计,并...

    关于Oracle数据库的一些基础知识

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在企业级数据存储和管理中扮演着重要角色。本文将深入探讨Oracle数据库的一些基础知识,包括它的功能、常用操作以及学习路径。 一、Oracle数据库函数大全...

    数据库笔试题-SQL Server开发人员应聘常见问题妙解

    - NULL值在数据库中代表未知或缺失的信息,了解如何处理NULL值,特别是在比较和聚合操作中。 - 使用IS NULL和IS NOT NULL检查字段是否为NULL。 #### 数据定义语言(DDL) **知识点6:CREATE和ALTER语句** - 创建和...

    MySQL入门很简单(数据库)

    5. **表的创建与操作**:在数据库中创建表,定义列名、数据类型和约束,如NOT NULL、UNIQUE、PRIMARY KEY等。ALTER TABLE语句用于后期修改表结构。 6. **数据插入与查询**:INSERT INTO语句用于向表中添加新记录,...

    数据库实验报告(5-8)

    理解存储过程的概念,学会在SQL Server中创建和调用存储过程。 **实验环境:** - 操作系统:Windows XP - 数据库管理系统:SQL Server 2005 **实验内容与步骤:** - 创建五张表:员工人事表`employee`、客户表`...

    合肥工业大学数据库实验报告

    - **实际操作能力提升**:提高了在实际环境中处理数据库的能力。 --- #### 实验三:使用SQL语句创建和删除基本表 **实验目的** 1. **了解数据类型**:熟悉SQL Server中的基本数据类型。 2. **创建基本表**:使用`...

    数据库汽车销售系统sql

    ### 数据库汽车销售系统SQL知识点解析 #### 一、实验目的与要求 ...通过以上步骤的学习和实践,学生不仅能够掌握数据库设计与管理的基础知识,还能学会如何将理论知识应用于实际项目中,从而提升自己的综合能力。

    数据库SQL基本语句(半天即可学会,轻松简单)

    数据库是信息存储管理的基础,而SQL(Structured Query Language,结构化查询语言)是数据库管理的核心,用于数据库中数据的查询、插入、更新和删除。本教材将介绍基本的SQL语句,通过简洁明了的例子使读者能够快速...

    Flash连接SQLServer数据库

    通过上述步骤,我们不仅学会了如何使用ASP技术连接SQL Server数据库,还学会了如何在Flash中通过与ASP文件的交互来实现对数据库的基本CRUD(创建、读取、更新、删除)操作。这种方式简单易懂,非常适合初学者学习。...

    大型数据库的基础学习知识(Oracle)—4

    服务器进程如数据库实例(Database Instance)和后台进程负责处理用户请求,而客户端工具则提供与数据库交互的界面。存储结构主要包括数据文件、控制文件、重做日志文件等,它们共同保证了数据的安全性和可靠性。 ...

    数据库实验概论报告

    根据提供的文件信息,以下是从标题、描述、标签以及部分内容...通过本次实验,学生不仅能够深入理解数据库的设计和实现原理,还能学会使用实际的开发工具进行数据库应用软件的开发,为后续的学习和实践打下坚实的基础。

    数据库实验模板

    - **了解数据库应用开发环境的建立与使用**:这要求实验者熟悉如何搭建一个基本的数据库应用环境,包括但不限于安装数据库管理系统(如本实验中的Microsoft SQL Server 2008 R2)、配置相关的服务以及开发工具(例如...

Global site tag (gtag.js) - Google Analytics