1.java程序操作Oracle
java连接Oracle
JDBC_ODBC桥连接
1.加载驱动:
Class.forName("sun.jdbc.odbc.JdbcodbcDriver");
2.得到连接:(和SQL Server一样)
首先,引用数据包:import java.sql.*;
连接: Connection ct=DriverManager.getConnection("jdbc:odbc:testds","用户名","密码");需配置数据源,数据源名称设为:testds
3.下面和SQL Server一摸一样:
创建执行状态对象: Statement sm =ct.createStatement();
查询的结果集: ResultSet rs =sm.executeQuery("select * from emp");
取得数据: rs.getString(字段序号,从1开始);
4.关闭各种资源:
rs.close();
sm.close();
ct.close();
解释:JDBC_ODBC不能远程连接。
JDBC
1.加载驱动:
Class.forName("oracle.jdbc.driver.OracleDriver");
2.得到连接:(和SQL Server一样)
首先,引用数据包:import java.sql.*;
连接: Connection ct=DriverManager.getConnection("jdbc:orcle:thin:@127.0.0.1:1521:myOrcl","用户名","密码");
3.下面和SQL Server一摸一样:
创建执行状态对象: Statement sm =ct.createStatement();
查询的结果集: ResultSet rs =sm.executeQuery("select * from emp");
取得数据: rs.getString(字段序号,从1开始);
4.关闭各种资源:
rs.close();
sm.close();
ct.close();
注意:JDBC能远程连接,并且需要引用jdbc驱动。
Java实现分页
--以下是在JSP中实现的代码:
数据分页
UserName | Salary |
Connection ct =null;
Statement sm=null;
ResultSet rs=null;
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
ct =DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:myOrcl", "scott", "scott");
sm =ct.createStatement();
//
String s_pageNow = (String)request.getParameter("newPage");
int pageNow =1;
if(s_pageNow !=null)
{
pageNow =Integer.parseInt(s_pageNow);
}
//
int pageCount =0;
int recordCount =0;
int pageSize =3;
rs = sm.executeQuery("select count(*) from emp");
if(rs.next())
{
recordCount =rs.getInt(1);
if(recordCount%pageSize ==0)
{
pageCount =recordCount/pageSize;
}
else
{
pageCount =recordCount/pageSize + 1;
}
}
rs =sm.executeQuery("select * from (select a1.*, rownum RN
from (select * from emp) a1 where rownum<="+ pageSize*pageNow +")
where RN>=" + (pageSize*(pageNow-1)+1));
while(rs.next())
{
out.println("
" + rs.getString(2)+"
" + rs.getDouble(6)+ "");}
out.println("
");//
for(int i=1; i
{
out.print(" [" + i + "] ");
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
try
{
rs.close();
sm.close();
ct.close();
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
%>