- 浏览: 208380 次
- 性别:
- 来自: 南京
文章分类
最新评论
-
white1114579650:
[flash=200,200][url][img][list] ...
Tomcat部署web项目 -
xue_x_d:
...
MySQL创建索引,查看以及删除 -
Vincent-Yang:
doUpdate不会用,接受的是List<T>那就 ...
java操作数据库的通用的类 -
royzs:
浅显明了,辛苦
MySQL与Oracle的区别 -
张伟818:
...
c3p0和dbcp的区别
引用
.(转载)
调用ResultSet中的last()方法时,提示:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Unsupported method: ResultSet.last
解决方法 :
Statement st=con.createStatement( ,ResultSet.CONCUR_READ_ONLY);
不带参数使用默认值:
createStatement()
=createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_READ_ONLY)
1。TYPE_FORWARD_ONLY:缺省类型。只允许向前访问一次,并且不会受到其他用户对该数据库所作更改的影响。
2。TYPE_SCROLL_INSENSITIVE:允许在列表中向前或向后移动,甚至可以进行特定定位,例如移至列表中的第四个记录或者从当前位置向后移动两个记录。不会受到其他用户对该数据库所作更改的影响。
3。 TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 一样,允许在记录中定位。这种类型受到其他用户所作更改的影响。如果用户在执行完查询之后删除一个记录,那个记录将从 ResultSet 中消失。类似的,对数据值的更改也将反映在 ResultSet 中。
第二个参数设置 ResultSet 的并发性,该参数确定是否可以更新 ResultSet。其选项有:
4。CONCUR_READ_ONLY:这是缺省值,指定不可以更新 ResultSet
5。CONCUR_UPDATABLE:指定可以更新 ResultSet
附加:ResultSet方法大全:
boolean absolute ( int row) JDBC 2.0。将游标移至结果集中的给定行号。
void afterLast () JDBC 2.0。将游标移至结果集的末尾,正好在最后一行的后面。
void beforeFirst () JDBC 2.0。将游标移至结果集的前方,正好在第一行的前面。
void clearWarnings () 清除此 ResultSet 对象上报告的所有警告。
void close () 立即释放此 ResultSet 对象的数据库和 JDBC 资源,而不是等待对象自动关闭时才释放它们。
int findColumn ( String columnName) 将给定 ResultSet 列名映射至其 ResultSet 列索引。
boolean first () JDBC 2.0。将游标移至结果集中的第一行。
BigDecimal getBigDecimal ( int columnIndex) JDBC 2.0。以具有全部精度的 java.math.BigDecimal 对象形式获取当前行中某个列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。
BigDecimal getBigDecimal ( int columnIndex , int scale) 以 Java 编程语言中的 java.math.BigDecimal 对象形式获取此 ResultSet 对象当前行中指定列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。不受支持。
BigDecimal getBigDecimal ( String columnName) JDBC 2.0。以具有全部精度的 java.math.BigDecimal 对象形式获取当前行中某个列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。
BigDecimal getBigDecimal ( String columnName , int scale) 以 Java 编程语言中的 java.math.BigDecimal 对象形式获取此 ResultSet 对象当前行中指定列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。不受支持。
Blob getBlob ( int columnIndex) JDBC 2.0。获取此 ResultSet 对象的当前行中的 BLOB 值。
Blob getBlob ( String columnName) JDBC 2.0。获取此 ResultSet 对象的当前行中的 BLOB 值。
boolean getBoolean ( int columnIndex) 以 Java 布尔值形式获取当前行中某列的值。
boolean getBoolean ( String columnName) 以 Java 布尔值形式获取当前行中某列的值。
byte getByte ( int columnIndex) 以 Java 编程语言中的字节形式获取此 ResultSet 对象当前行中指定列的值。
byte getByte ( String columnName) 以 Java 编程语言中的字节形式获取此 ResultSet 对象当前行中指定列的值。
byte[] getBytes ( int columnIndex) 以 Java 编程语言中的字节数组形式获取此 ResultSet 对象当前行中指定列的值。
byte[] getBytes ( String columnName) 以 Java 编程语言中的字节数组形式获取此 ResultSet 对象当前行中指定列的值。
int getConcurrency () JDBC 2.0。返回结果集的并行性方式。
Date getDate ( int columnIndex) 以 Java 编程语言中的 java.sql.Date 对象形式获取此 ResultSet 对象当前行中指定列的值。
Date getDate ( int columnIndex , Calendar cal) 以 Java 编程语言中的 java.sql.Date 对象形式返回此 ResultSet 对象的当前行中指定列的值。
Date getDate ( String columnName) 以 Java 编程语言中的 java.sql.Date 对象形式获取此 ResultSet 对象的当前行中指定列的值。
double getDouble ( int columnIndex) 以 Java 双精度形式获取当前行中某列的值。
double getDouble ( String columnName) 以 Java 双精度形式获取当前行中某列的值。
float getFloat ( int columnIndex) 以 Java 浮点形式获取当前行中某列的值。
float getFloat ( String columnName) 以 Java 浮点形式获取当前行中某列的值。
int getInt ( int columnIndex) 以 Java 编程语言中的整数形式获取此 ResultSet 对象当前行中指定列的值。
int getInt ( String columnName) 以 Java 编程语言中的整数形式获取此 ResultSet 对象的当前行中指定列的值。
long getLong ( int columnIndex) 以 Java 长整型形式获取当前行中某列的值。
long getLong ( String columnName) 以 Java 长整型形式获取当前行中某列的值。
ResultSetMetaData getMetaData () 检索此 ResultSet 对象的列的数目、类型和属性。
Object getObject ( int columnIndex) 以 Java 对象形式获取当前行中某列的值。
Object getObject ( String columnName) 以 Java 对象形式获取当前行中某列的值。
int getRow () JDBC 2.0。检索当前行号。
short getShort ( int columnIndex) 以 Java 编程语言中的 short 形式获取此 ResultSet 对象当前行中指定列的值。
short getShort ( String columnName) 以 Java 编程语言中的 short 形式获取此 ResultSet 对象当前行中指定列的值。
Statement getStatement () JDBC 2.0。返回产生此 ResultSet 对象的"语句"。
String getString ( int columnIndex) 以 Java 编程语言中的 String 形式获取此 ResultSet 对象当前行中指定列的值。
String getString ( String columnName) 以 Java 编程语言中的 String 形式获取此 ResultSet 对象当前行中指定列的值。
Time getTime ( int columnIndex) 以 Java 编程语言中的 java.sql.Time 对象形式获取此 ResultSet 对象的当前行中指定列的值。
Time getTime ( String columnName) 以 Java 编程语言中的 java.sql.Date 对象形式获取此 ResultSet 对象的当前行中指定列的值。
Timestamp getTimestamp ( String columnName) 以 Java 编程语言中的 java.sql.Timestamp 对象形式获取此 ResultSet 对象的当前行中指定列的值。
Timestamp getTimestamp ( int columnIndex) 以 Java 编程语言中的 java.sql.Timestamp 对象形式获取此 ResultSet 对象的当前行中指定列的值。
int getType () JDBC 2.0。返回此结果集的类型。
SQLWarning getWarnings () 返回此 ResultSet 上的调用报告的首次警告。
boolean isAfterLast () JDBC 2.0。指示游标是否在结果集中的最后一行后面。
boolean isBeforeFirst () JDBC 2.0。指示游标是否在结果集中的第一行前面。
boolean isFirst () JDBC 2.0。指示游标是否在结果集中的第一行上。
boolean isLast () JDBC 2.0。指示游标是否在结果集中的最后一行上。对于具有类型 TYPE_FORWARD_ONLY 的结果集,不支持此方法。
boolean last () JDBC 2.0。将游标移至结果集中的最后一行。
boolean next () 将游标从当前位置向下移动一行。
boolean previous () JDBC 2.0。将游标移至结果集中的前一行。
boolean relative ( int rows) JDBC 2.0。将游标移动相对行数,正数或负数。
boolean wasNull () 报告读取的最后一列是否具有值 SQL NULL。
调用ResultSet中的last()方法时,提示:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Unsupported method: ResultSet.last
解决方法 :
Statement st=con.createStatement( ,ResultSet.CONCUR_READ_ONLY);
不带参数使用默认值:
createStatement()
=createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_READ_ONLY)
1。TYPE_FORWARD_ONLY:缺省类型。只允许向前访问一次,并且不会受到其他用户对该数据库所作更改的影响。
2。TYPE_SCROLL_INSENSITIVE:允许在列表中向前或向后移动,甚至可以进行特定定位,例如移至列表中的第四个记录或者从当前位置向后移动两个记录。不会受到其他用户对该数据库所作更改的影响。
3。 TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 一样,允许在记录中定位。这种类型受到其他用户所作更改的影响。如果用户在执行完查询之后删除一个记录,那个记录将从 ResultSet 中消失。类似的,对数据值的更改也将反映在 ResultSet 中。
第二个参数设置 ResultSet 的并发性,该参数确定是否可以更新 ResultSet。其选项有:
4。CONCUR_READ_ONLY:这是缺省值,指定不可以更新 ResultSet
5。CONCUR_UPDATABLE:指定可以更新 ResultSet
附加:ResultSet方法大全:
boolean absolute ( int row) JDBC 2.0。将游标移至结果集中的给定行号。
void afterLast () JDBC 2.0。将游标移至结果集的末尾,正好在最后一行的后面。
void beforeFirst () JDBC 2.0。将游标移至结果集的前方,正好在第一行的前面。
void clearWarnings () 清除此 ResultSet 对象上报告的所有警告。
void close () 立即释放此 ResultSet 对象的数据库和 JDBC 资源,而不是等待对象自动关闭时才释放它们。
int findColumn ( String columnName) 将给定 ResultSet 列名映射至其 ResultSet 列索引。
boolean first () JDBC 2.0。将游标移至结果集中的第一行。
BigDecimal getBigDecimal ( int columnIndex) JDBC 2.0。以具有全部精度的 java.math.BigDecimal 对象形式获取当前行中某个列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。
BigDecimal getBigDecimal ( int columnIndex , int scale) 以 Java 编程语言中的 java.math.BigDecimal 对象形式获取此 ResultSet 对象当前行中指定列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。不受支持。
BigDecimal getBigDecimal ( String columnName) JDBC 2.0。以具有全部精度的 java.math.BigDecimal 对象形式获取当前行中某个列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。
BigDecimal getBigDecimal ( String columnName , int scale) 以 Java 编程语言中的 java.math.BigDecimal 对象形式获取此 ResultSet 对象当前行中指定列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。不受支持。
Blob getBlob ( int columnIndex) JDBC 2.0。获取此 ResultSet 对象的当前行中的 BLOB 值。
Blob getBlob ( String columnName) JDBC 2.0。获取此 ResultSet 对象的当前行中的 BLOB 值。
boolean getBoolean ( int columnIndex) 以 Java 布尔值形式获取当前行中某列的值。
boolean getBoolean ( String columnName) 以 Java 布尔值形式获取当前行中某列的值。
byte getByte ( int columnIndex) 以 Java 编程语言中的字节形式获取此 ResultSet 对象当前行中指定列的值。
byte getByte ( String columnName) 以 Java 编程语言中的字节形式获取此 ResultSet 对象当前行中指定列的值。
byte[] getBytes ( int columnIndex) 以 Java 编程语言中的字节数组形式获取此 ResultSet 对象当前行中指定列的值。
byte[] getBytes ( String columnName) 以 Java 编程语言中的字节数组形式获取此 ResultSet 对象当前行中指定列的值。
int getConcurrency () JDBC 2.0。返回结果集的并行性方式。
Date getDate ( int columnIndex) 以 Java 编程语言中的 java.sql.Date 对象形式获取此 ResultSet 对象当前行中指定列的值。
Date getDate ( int columnIndex , Calendar cal) 以 Java 编程语言中的 java.sql.Date 对象形式返回此 ResultSet 对象的当前行中指定列的值。
Date getDate ( String columnName) 以 Java 编程语言中的 java.sql.Date 对象形式获取此 ResultSet 对象的当前行中指定列的值。
double getDouble ( int columnIndex) 以 Java 双精度形式获取当前行中某列的值。
double getDouble ( String columnName) 以 Java 双精度形式获取当前行中某列的值。
float getFloat ( int columnIndex) 以 Java 浮点形式获取当前行中某列的值。
float getFloat ( String columnName) 以 Java 浮点形式获取当前行中某列的值。
int getInt ( int columnIndex) 以 Java 编程语言中的整数形式获取此 ResultSet 对象当前行中指定列的值。
int getInt ( String columnName) 以 Java 编程语言中的整数形式获取此 ResultSet 对象的当前行中指定列的值。
long getLong ( int columnIndex) 以 Java 长整型形式获取当前行中某列的值。
long getLong ( String columnName) 以 Java 长整型形式获取当前行中某列的值。
ResultSetMetaData getMetaData () 检索此 ResultSet 对象的列的数目、类型和属性。
Object getObject ( int columnIndex) 以 Java 对象形式获取当前行中某列的值。
Object getObject ( String columnName) 以 Java 对象形式获取当前行中某列的值。
int getRow () JDBC 2.0。检索当前行号。
short getShort ( int columnIndex) 以 Java 编程语言中的 short 形式获取此 ResultSet 对象当前行中指定列的值。
short getShort ( String columnName) 以 Java 编程语言中的 short 形式获取此 ResultSet 对象当前行中指定列的值。
Statement getStatement () JDBC 2.0。返回产生此 ResultSet 对象的"语句"。
String getString ( int columnIndex) 以 Java 编程语言中的 String 形式获取此 ResultSet 对象当前行中指定列的值。
String getString ( String columnName) 以 Java 编程语言中的 String 形式获取此 ResultSet 对象当前行中指定列的值。
Time getTime ( int columnIndex) 以 Java 编程语言中的 java.sql.Time 对象形式获取此 ResultSet 对象的当前行中指定列的值。
Time getTime ( String columnName) 以 Java 编程语言中的 java.sql.Date 对象形式获取此 ResultSet 对象的当前行中指定列的值。
Timestamp getTimestamp ( String columnName) 以 Java 编程语言中的 java.sql.Timestamp 对象形式获取此 ResultSet 对象的当前行中指定列的值。
Timestamp getTimestamp ( int columnIndex) 以 Java 编程语言中的 java.sql.Timestamp 对象形式获取此 ResultSet 对象的当前行中指定列的值。
int getType () JDBC 2.0。返回此结果集的类型。
SQLWarning getWarnings () 返回此 ResultSet 上的调用报告的首次警告。
boolean isAfterLast () JDBC 2.0。指示游标是否在结果集中的最后一行后面。
boolean isBeforeFirst () JDBC 2.0。指示游标是否在结果集中的第一行前面。
boolean isFirst () JDBC 2.0。指示游标是否在结果集中的第一行上。
boolean isLast () JDBC 2.0。指示游标是否在结果集中的最后一行上。对于具有类型 TYPE_FORWARD_ONLY 的结果集,不支持此方法。
boolean last () JDBC 2.0。将游标移至结果集中的最后一行。
boolean next () 将游标从当前位置向下移动一行。
boolean previous () JDBC 2.0。将游标移至结果集中的前一行。
boolean relative ( int rows) JDBC 2.0。将游标移动相对行数,正数或负数。
boolean wasNull () 报告读取的最后一列是否具有值 SQL NULL。
发表评论
-
数据库连接的相关问题
2012-08-30 09:23 01。url if (null == ip || null = ... -
数据库的连接池
2012-08-14 15:09 0数据库的连接池的相关的知识! -
JDBC连接各种数据库
2012-03-11 18:38 858引用1、Oracle8/8i/9i数据库(thin模式) ... -
内存数据库的定义
2012-03-10 15:57 1179内存数据库,顾名思 ... -
Oracle的学习视频
2012-03-10 13:53 975http://school.itzcn.com/special ... -
sql的索引优化
2012-03-10 08:53 983引用问题描述: 我们要 ... -
char,varchar以及varchar2的区别
2012-03-10 08:54 1114详细请见附件 -
MySQL创建索引,查看以及删除
2012-03-09 09:15 91951.索引作用 在索引列上,除了上面提到的有序查找之外, ... -
子查询转化为连接查询的例子
2012-03-09 09:15 7257引用 我们进行数据查询的时候极少有可能就在一张表里就能得到 ... -
Oracle完整的试题
2012-03-07 09:14 2129create table student( sno varc ... -
MySQL与Oracle的区别
2012-03-08 09:26 1662引用1. Oracle是大型数据库而Mysql是中小型数据库 ... -
Oracle的常用的命令
2012-03-06 09:31 647--导出数据库 exp test2/ ... -
数据库的索引浅谈
2012-03-06 09:31 836引用 数据库表的信息是存在在文件中的,每个文件中有很多记录,你 ... -
Tomcat设置JNDI
2012-03-06 09:31 9181、拷贝数据库驱动到tomcat的lib目录 2、打开con ... -
左连接,右连接以及全连接
2012-03-08 09:25 825详细参考:http://lichunhui.iteye.com ... -
死锁产生的原因以及解决的方法
2012-03-05 14:37 1379原因分析: 首先死锁是怎么发生的: 简单说, ... -
几条记下来的sql
2012-03-05 14:08 833本人认为很实用的几条语句 1)select ... from ... -
MySQL 中的Blog杂谈
2012-03-05 13:58 2006声明:本人完全copy来的 一、MySQL BLOB 类型介绍 ... -
c3p0和dbcp的区别
2012-03-05 13:34 6823c3p0简介: C3P0是一个开源的JDBC连接池,它 ... -
sql的优化30条
2012-03-03 18:18 10761. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 wh ...
相关推荐
**jdbc数据集生成器**是一种实用工具,它能够根据通过JDBC(Java Database Connectivity)接口获取的数据集(ResultSet)自动生成HTML文档,通常以表格的形式展示。这种工具模仿了数据库的导出数据功能,使得开发者...
### JDBC基础教程之ResultSet对象详解 #### 一、ResultSet对象概览 `ResultSet`对象是Java Database Connectivity (JDBC) API中的一个核心组件,用于处理SQL查询结果。它充当了一个临时的数据存储,其中包含了所有...
【JDBC桥技术详解】 Java Database Connectivity (JDBC) 是Java平台中用于访问数据库的标准应用程序接口,它使得Java开发者能够连接和操作各种数据库系统。JDBC桥技术是JDBC的一个重要组成部分,它允许Java应用程序...
这个工具类通常包含一个静态方法,接受ResultSet和JavaBean类型作为参数,然后遍历ResultSet,将数据填充到JavaBean对象中: ```java import java.sql.ResultSet; import java.sql.SQLException; public class ...
### JDBC详解 #### 一、JDBC概述 JDBC(Java Database Connectivity)是Java平台上的标准数据库连接技术,它提供了一套API(Application Programming Interface),允许Java程序与各种类型的数据库进行交互。通过...
本文将详细解析如何使用JDBC来连接并操作Oracle 11g和MySQL 5数据库,涉及的主要知识点包括参数传递、反射、读取属性文件、预处理语句、批处理、带参数的存储过程、事务管理和可滚动/可更新的结果集。 首先,JDBC...
### JDBC 连接 Oracle 字符集不同导致乱码问题解析及解决方案 #### 问题背景 在使用 JDBC(Java Database Connectivity)连接 Oracle 数据库时,可能会遇到一个常见的问题:从远程 Oracle 数据库获取的数据出现乱码...
使用JDBC,我们可以执行SQL语句、查询数据、更新数据库等操作。本篇文章将详细讲解如何使用JDBC从数据库中查询数据。 首先,我们需要导入JDBC相关的jar包,通常在Java的数据库驱动包中,例如对于MySQL,需要引入`...
### JDBC详解(基础版本) #### 一、JDBC概述 **1.1 什么是JDBC?** JDBC(Java Database Connectivity)是Java平台上的数据库访问技术。简而言之,它是Java语言与各种数据库进行交互的桥梁。通过JDBC,开发者...
【jdbc基础知识详解】 Java Database Connectivity (JDBC) 是Java编程语言中用来规范应用程序如何访问数据库的应用程序接口(API)。它是Java SE的一部分,允许Java开发者连接到各种类型的数据库,执行SQL语句,...
**JDBC数据连接源码详解** Java Database Connectivity (JDBC) 是Java编程语言与各种数据库交互的一种标准接口。它由Sun Microsystems(现为Oracle公司)开发,为Java开发者提供了访问数据库的强大工具。JDBC允许...
JDBC核心代码详解 在本文中,我们将详细解释JDBC(Java Database Connectivity)的核心代码,涵盖了JDBC的基本概念、步骤、语句和实践操作。 JDBC概述 JDBC是Java语言中用于连接数据库的API(Application ...
4. **结果集(ResultSet)**:当执行查询时,数据库返回的结果会被封装成`ResultSet`对象。开发者可以遍历`ResultSet`,获取查询结果中的每一行数据。 5. **事务(Transaction)管理**:JDBC支持ACID(原子性、一致...
ResultSet是执行SQL查询后返回的结果集,提供了遍历查询结果的方法,如`next()`,以及获取列数据的方法,如`getString(int columnIndex)`。 **第六节 JDBC中数据类型详解** 6.1 **基本数据类型** JDBC将数据库中的...
### JDBC 访问数据的关键步骤详解 #### 一、加载 JDBC 驱动 在 Java 应用程序中使用 JDBC 连接数据库的第一步是加载 JDBC 驱动。这通常通过 `Class.forName()` 方法来实现,该方法将指定的 JDBC 驱动类加载到 Java ...
- **获取元数据**:通过`rs.getMetaData()`获取结果集的元数据,包括列的数量和列名等信息。 - **遍历结果集**:通过`rs.next()`遍历每一行记录,对于每一行记录,使用`HashMap`来存储列名及其对应的值,并将列名...
**JDBC连接SQL Server例子详解** Java JDBC (Java Database Connectivity) 是Java平台中用于与数据库交互的一组标准API,它允许Java程序通过JDBC驱动程序与各种类型的数据库进行通信。在本例中,我们将深入探讨如何...