`
universsky
  • 浏览: 92769 次
文章分类
社区版块
存档分类
最新评论

Java操作oracle 数据库: 接口 ResultSet

 
阅读更多

Java操作数据库: 接口 ResultSet


ResultSet 接口提供用于从当前行获取列值的获取 方法

ResultSet 对象具有指向其当前数据行的光标。最初,光标被置于第一行之前。next 方法将光标移动到下一行;因为该方法在 ResultSet 对象没有下一行时返回 false,所以可以在 while 循环中使用它来迭代结果集。


/************************************SOURCECODE******************************************/
/**
* @author 东海 陈光剑  chenguangjian 2013-4-9上午10:42:40
* Email: universsky@126.com
* Blog:  http://blog.sina.com.cn/universsky11
*        http://blog.csdn.net/universsky
*/
package isword;
 
/**
* @author 东海 陈光剑  chenguangjian 2013-4-9上午10:42:40
* Email: universsky@126.com
* Blog:  http://blog.sina.com.cn/universsky11
*        http://blog.csdn.net/universsky
*/
 
 
/**
* @author 东海 陈光剑  chenguangjian 2013-4-9上午10:42:40
* Email: universsky@126.com
* Blog:  http://blog.sina.com.cn/universsky11
*        http://blog.csdn.net/universsky
*/
 
import java.sql.Connection;   
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;   
import java.sql.ResultSet;   
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;   
 
 
public class DBConnection {
/** * 获取数据连接
             驱动:oracle.jdbc.driver.OracleDriverURL:jdbc:oracle:thin:@<machine_name><:port>:dbname  
  jdbc:oracle:thin:@localhost:1521:orcl
       注:machine_name:数据库所在的机器的名称ip;  
      port:端口号,默认是1521
      username:默认是scott
      password:默认是tiger
* @throws SQLException
* */
public static void main(String[]args) throws SQLException{
DBConnection dc=new DBConnection();
Connection conn=null;
String ip="10.137.5.61";//db ip
String port="1521";//
String sid="ora61";
String userName="ddsysdb";
String passWord="IVcbs33";
conn=dc.getConnection(ip, port, sid, userName, passWord);
System.out.println("dc.getConnection="+conn);
// 从下面开始,和SQL Server一模一样              
Statement sm = conn.createStatement();              
//ResultSet rs = sm.executeQuery("select * from cbe_policy where ATTACHPRICEPLANID=10");               
ResultSet rs = sm.executeQuery("select * from ts_priceplan");
System.out.println("sm.executeQuery="+rs);
/**
* public interface DatabaseMetaData extends Wrapper
* 关于数据库的整体综合信息。
 
*/
DatabaseMetaData dbmd=conn.getMetaData();
/**
Retrieves a DatabaseMetaData object that contains metadata about the database to which this Connection object represents a connection. The metadata includes information about the database's tables, its supported SQL grammar, its stored procedures, the capabilities of this connection, and so on.
        */
System.out.println("conn.getMetaData()="+dbmd);
System.out.println("dbmd.getConnection()="+dbmd.getConnection());//获取此元数据对象所产生的连接。
System.out.println("getCatalogSeparator()="+dbmd.getCatalogSeparator());
System.out.println("getCatalogTerm()="+dbmd.getCatalogTerm());
System.out.println("getCatalogTerm()="+dbmd.getCatalogTerm());
System.out.println("getDatabaseMajorVersion()="+dbmd.getDatabaseMajorVersion());
System.out.println("getDriverName()="+dbmd.getDriverName());
System.out.println("getDriverVersion()="+dbmd.getDriverVersion());
System.out.println("getMaxColumnsInIndex()="+dbmd.getMaxColumnsInIndex());
//System.out.println(dbmd.);
 
//ResultSetMetaData smd=(ResultSetMetaData) sm.executeQuery("select * from ts_priceplan");
//System.out.println(smd);
//while(rs.isLast()){System.out.println("rs.getRow()="+rs.getRow());}
//for (int columnIndex=1;rs.next()& columnIndex<rs.getRow() ;columnIndex++)
for (int columnIndex=1;columnIndex<dbmd.getMaxColumnsInIndex()-3;columnIndex++)
{                   //用户名   
rs.next();
System.out.print(rs.getString(columnIndex)+" ");
/**String getNString(int columnIndex)
* 以 Java 编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列的值。
*/
}
//默认是从1开始编号的 , 超出列序号范围,会报错:无效的列索引范围    
}
public Connection getConnection(String  ip,String port,String sid,String userName,String passWord )
{
String driverName="oracle.jdbc.driver.OracleDriver";// 连接oracle驱动包
String dbUrl="jdbc:oracle:thin:@"+ip+":"+port+":"+sid+"";
Connection conn=null;
        
// 从下面开始,和SQL Server一模一样               
try {
Class.forName(driverName);
conn = DriverManager.getConnection(dbUrl, userName, passWord);
   } catch (ClassNotFoundException e)
   {
// TODO Auto-generated catch block
    e.printStackTrace();
   
} catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
//Connection conn;
return conn;  
}
}
 
 
 
/**********************OUTPUT***********************************************/
 
dc.getConnection=oracle.jdbc.driver.T4CConnection@19db21f
sm.executeQuery=oracle.jdbc.driver.OracleResultSetImpl@12c6f83
conn.getMetaData()=oracle.jdbc.driver.OracleDatabaseMetaData@4d158c
dbmd.getConnection()=oracle.jdbc.driver.T4CConnection@19db21f
getCatalogSeparator()=
getCatalogTerm()=
getCatalogTerm()=
getDatabaseMajorVersion()=11
getDriverName()=Oracle JDBC driver
getDriverVersion()=11.2.0.3.0
getMaxColumnsInIndex()=32
 
1 2012-08-19 07:58:18 2037-01-01 00:00:00 3 null 2101 P10V0001T0001 0 0 0 短信特殊号码定价计划 Price Plan: MMS Special Number null UCB 一次性扣费定价计划 Price Plan: Voice Price Plan: Voice sysadmin 2012-11-01 19:56:17 null sysadmin 2012-11-01 16:51:48 null 204 1 1 bme.prn.11149.V0001.20130328145032 null 0

分享到:
评论

相关推荐

    JAVA连接ORACLE数据库方法及测试

    import java.sql.*; public class Bc { // 声明数据库地址及驱动 private Connection conn = null; private String url = "jdbc:oracle:thin:@localhost:1521:ORCL"; private String driver = "oracle.jdbc....

    如何从 Java 存储过程将 JDBC ResultSet 作为 Ref Cursor 返回.doc

    在 Oracle9i 之前,不可能从 Java 存储过程直接返回一个 ResultSet,因为没有定义表单 ResultSet-&gt;REF CURSOR 的映射。Oracle9i 增加了此映射,允许从函数返回 ResultSet 或将其作为 OUT 参数传到某个过程。但它仍不...

    java程序是怎么操作数据库的,可以以常用据库为例,求详细解答,最好能举例。

    JDBC Driver Mannager-&gt;局部JDBC驱动-&gt;客户端数据库-&gt;数据库服务器-&gt;返回查询结果,这种访问事实上是转换JDBC调用为相应的数据库(Oracle, Sybase, Informix, DB2, 和其他的数据库数据库管理系统)的客户端API调用...

    java连接数据库工具类--DBConnection(java源码)

    import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming....

    Java连接Oralce数据库小例

    ResultSet newrs = dbfuns .executeQuery("select * from emp order by empno"); try { while (newrs.next()) { String id = newrs.getString("EMPNO"); String title = newrs.getString(...

    Java数据库编程中的技巧

    1、java数据库操作基本流程 2、几个常用的重要技巧: 可滚动、更新的记录集 批量更新 事务处理 java数据库操作基本流程:取得数据库连接 – 执行sql语句 – 处理执行结果 – 释放数据库连接 1、取得数据库连接 1)用...

    jdbc连接数据库getConnection 增、删、改、查

    SqlHelper.java连接数据库通用类... package org.jdbc.com.util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql....

    Java开发详解.zip

    031706_【第17章:Java数据库编程】_ResultSet接口笔记.pdf 031707_【第17章:Java数据库编程】_PreparedStatement接口笔记.pdf 031708_【第17章:Java数据库编程】_处理大数据对象(1)—处理CLOB数据笔记.pdf ...

    用java写的一个数据库连接池

    自己开发的一个数据库连接池,包含代码,在oracle测试了一下,请各位对代码指正。 使用的方法如下: 1.在工程里面加入以下jar文件:mydatasource.jar,dom4j.jar,ojdbc14.jar 2.在工程目录任意位置放入连接池配置文件...

    Java连接数据库的综合类

    ①数据库链接对象、sql语句操作对象,封装结果集对象,这三个对象会重复定义 ②封装数据的代码重复,而且操作复杂,代码量大 ③释放资源的代码重复 ResultSetHandle的实现类 ResultSetHandle:封装数据的策略对象--...

    Java数据库访问工具JDBC

    String driver = "Oracle.jdbc.driver.OracleDriver"; String strUrl = "jdbc:Oracle:thin:@10.87.66.30:1521:oshr"; Statement stmt = null; ResultSet rs = null; Connection conn = null; ...

    xmljava系统源码-memory:超轻量级Java持久化工具:比dbutils更小巧、好用的的持久化工具,支持Oracle&MYSQL

    java系统源码 清瘦的记录者: 一个比dbutils更小巧、好用的的持久化工具 1. 概述 1.1 连接、语句和结果集  从上看,其对数据访问层有相当简洁的抽象:1、连接(connection) 2、语句(statement)、3结果集(result set)...

    jsp + oracle分页简单实用

    功能:JSP数据库操作例程 - 数据分页显示 - JDBC 2.0 - Oracle --%&gt; ;charset=8859_1" %&gt; //变量声明 java.sql.Connection sqlCon; //数据库连接对象 java.sql.Statement sqlStmt; //SQL语句对象 ...

    简单留言板

    使用JDBC连接ORACLE数据库 --%&gt; ! String DBURL = "jdbc:oracle:thin:@localhost:1521:dbnews"; String USERNAME = "scott"; String USERPASS = "orcl"; Connection conn = null; PreparedStatement pstmt = null;...

    jsp连接数据库大全

    一、jsp连接Oracle8/8i/9i数据库(用thin模式) testoracle.jsp如下: ;charset=gb2312"%&gt; &lt;%@ page import="java.sql.*"%&gt; &lt;html&gt; &lt;body&gt; ("oracle.jdbc.driver.OracleDriver").newInstance(); String url=...

    mysql-connector-java-5.1.46-bin

     url(jdbc:oracle:thin:@ip:端口:数据库sid),  user,password,如果要手动提交,调用conn.setAutoCommit(false) 3.创建statement对象 一个statement对象只能打开一个resultset,如果有两个  同样结果的结果集交叉...

    Java JDK 7学习笔记(国内第一本Java 7,前期版本累计销量5万册)

     《Java JDK 7学习笔记》将IDE操作纳为教学内容之一,使读者能与实践结合,提供的视频教学能更清楚地帮助读者掌握操作步骤。 内容简介 书籍 计算机书籍  《java jdk 7学习笔记》是作者多年来教学实践经验的总结...

    Java+JSP成绩与课程管理升级(测试完成)

    1、修改了数据库访问:以前是在代码中写死的数据库配置,现在只需在config.properties相应的配置项,配置中默认用的oracle数据,其它数据库选择相应的配置。增加相应的JAR包(放在webapps\kjglxt\WEB-INF\lib下)。...

    Mysql,SQL Server 2000,Oracle四种数据库的连接

    Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=books","sa",""); Statement stmt=con.createStatement(); ResultSet rst=stmt.executeQuery(...

    jdbc基础和参考

    Oracle数据库进行连接的时候,使用的驱动类: 1.oracle.jdbc.driver.OracleDriver 2.oracle.jdbc.OracleDriver 2.建立连接 连接方式: 1.DriverManager(中的getConnection其实也是调用的Driver.connect方法) ...

Global site tag (gtag.js) - Google Analytics