`

JDBC操作数据库常见的一些异常及解决方案

 
阅读更多

项目开发的时候遇到一些问题,基本都是数据库的原因。

觉得总结一下常见的数据库异常,总结如下:

1.java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor。

错误原因:数据库的sid即数据库名称没有配置正确。

 

2.java.sql.SQLException: ORA-00942: table or view does not exist

错误原因:太明显了,你一定要检查你的SQL语句! from的表或视图一定是名称搞错了。

 

3.java.sql.SQLException: 无效的列索引

错误原因:可能是SQL语句中参入了中文的符号,也可能是代码中的statement为null,在后面执行sql的时候报的错误。最有可能的错误原因是PreparedStatement调用时调用setXXX(int index, **)时,传参的起始序列号写错误了。参数的index实际上是从1开始的,而不是0,非常不理解为什么!!!建议通过别名来获取数据。

 

4.java.sql.SQLException: Io 异常: Connection reset

错误原因:你连接的数据库的服务重启了或因为网络断开了,导致数据库连接异常。查看网络,重新连接一下服务器一般可以解决问题。

 

5.java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection

错误原因:无非就是数据库+网络的问题。数据库连接满了,监听停了,并发太大,IP,防火墙如此而已。具体参考:http://blog.csdn.net/Mr_Von/article/details/2880626。还有一种极变态的原因,那就是数据库的表被锁死了。可能是某一个数据库人员直接操作数据库表,使用如for update等命令,导致表被锁死了。

 

以上就是我总结的一些数据库原因和相应的解决方案,实践出真知,血泪经验积累,以后会随时补充。欢迎大家指正。

 

 

 

 

 

 

分享到:
评论

相关推荐

    常规Java工具,算法,加密,数据库,面试题,源代码分析,解决方案.zip

    数据库相关:包括关系型数据库和非关系型数据库的使用,以及JDBC、MyBatis等与数据库交互的技术。 实战项目经验:分享了几个经典的Java项目,解析了项目的架构设计和核心技术点。 面试经验和技巧:整理了常见的Java...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    每个实例都是经过笔者精心筛选的,具有很强的实用性,其中一些实例是开发人员难于寻觅的解决方案。 本书两卷共计1200个例子,包括了开发中各个方面最常用的实例,是目前市场上实例最全面的开发类图书;本书实例来源...

    java面试题,180多页,绝对良心制作,欢迎点评,涵盖各种知识点,排版优美,阅读舒心

    【WEB】阐述JDBC操作数据库的步骤 36 【WEB】JSP内置对象 37 【WEB】JSP中的四种作用域 38 【WEB】转发(forward)和重定向(redirect)的区别 38 forward(转发): 38 redirect(重定向): 39 区别: 39 【WEB】...

    Spring.3.x企业应用开发实战(完整版).part2

    第11章 使用Spring JDBC访问数据库 11.1 使用Spring JDBC 11.1.1 JDBCTemplate小试牛刀 11.1.2 在DAO中使用JDBCTemplate 11.2 基本的数据操作 11.2.1 更改数据 11.2.2 返回数据库的表自增主键值 11.2.3 批量更改数据...

    Spring3.x企业应用开发实战(完整版) part1

    第11章 使用Spring JDBC访问数据库 11.1 使用Spring JDBC 11.1.1 JDBCTemplate小试牛刀 11.1.2 在DAO中使用JDBCTemplate 11.2 基本的数据操作 11.2.1 更改数据 11.2.2 返回数据库的表自增主键值 11.2.3 批量更改数据...

    Spring API

    9.9. 常见问题的解决方法 9.9.1. 对一个特定的 DataSource 使用了错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 ...

    JAVA 范例大全 光盘 资源

    第10章 I/O及文件操作 196 实例78 创建文件和目录 196 实例79 查找文件 199 实例80 删除文件夹和文件 201 实例81 文件复制与移动 204 实例82 多种方式读取文件内容 209 实例83 多种方式写文件 213 实例84 ...

    java面试题

    79. 常见异常 90 79.1. nullpointerexception 90 79.2. classnotfoundexception 90 79.3. arithmeticexception 90 79.4. arrayindexoutofboundsexception 91 79.5. illegalargumentexception 91 79.6. ...

    Java面试宝典2010版

    5、说出一些数据库优化方面的经验? 6、union和union all有什么不同? 7.分页语句 8.用一条SQL语句 查询出每门课都大于80分的学生姓名 9.所有部门之间的比赛组合 10.每个月份的发生额都比101科目多的科目 11.统计...

    ARCH4系统开发指南

    2.8 如何使用Hibernate操作Informix数据库 20 2.8.1 实现对LOB数据对象的支持 20 2.8.1.1 配置dataAccessContext-hibernate.xml 20 2.8.1.2 操作CLOB数据 20 2.8.1.3 操作BLOB数据 21 2.8.2 实现Sequence主键生成...

    大数据中台架构栈.doc

    因此这篇文章旨在梳理市面上常见的开源技术方案,背后原理及应用场景,帮助产品经 理对大数据技术体系有个大致全面的了解。 一般来说,我们将数据整个链条区分为四个环节,从数据采集传输,到数据存储,再到 数据...

    Spring中文帮助文档

    9.9. 常见问题的解决方法 9.9.1. 对一个特定的 DataSource 使用了错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 ...

    Spring-Reference_zh_CN(Spring中文参考手册)

    9.9. 公共问题的解决方案 9.9.1. 对一个特定的 DataSource 使用错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 11.1. 简介 ...

    java 面试题 总结

    SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件。EntityBean被用来代表应用系统中用到的数据。 对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器上...

    最新Java面试宝典pdf版

    5、说出一些数据库优化方面的经验? 95 6、union和union all有什么不同? 96 7.分页语句 97 8.用一条SQL语句 查询出每门课都大于80分的学生姓名 100 9.所有部门之间的比赛组合 100 10.每个月份的发生额都比101科目多的...

Global site tag (gtag.js) - Google Analytics