package com.gr.util;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Types;
public class ConnectionManager {
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:cui";
Connection conn = DriverManager.getConnection(url, "cui", "cui");
System.out.println("链接成功:" + conn.toString());
conn.setAutoCommit(true); // 设置自动提交
// 调用带参数有返回值的存储过程
// 注意这里参数的位置和类型必须和存储过程里定义的一致,输出参数进行注册,而输入参数进行赋值
CallableStatement cstmp = conn
.prepareCall("{call insert_class(?,?)}");
cstmp.registerOutParameter(1, Types.INTEGER);
cstmp.setString(2, "存储过程组");
cstmp.execute();
// 没有返回值
// cstmp.executeUpdate();
int newId = cstmp.getInt(1);
System.out.println(newId);
// 查询,带有分页语句
String sql_select = "SELECT * FROM (SELECT A.*, ROWNUM RN FROM (SELECT * FROM classes) A WHERE ROWNUM <= ?)WHERE RN >= ?";
PreparedStatement pstmt_sel = conn.prepareStatement(sql_select);
pstmt_sel.setInt(1, 4);
pstmt_sel.setInt(2, 3);
ResultSet rs = pstmt_sel.executeQuery();
while (rs.next()) {
System.out.println(rs.getInt("id") + " "
+ rs.getString("classname"));
}
// 增加
String sql_insert = "insert into classes values(class_seq.nextval,?)";
PreparedStatement pstmt_add = conn.prepareStatement(sql_insert);
pstmt_add.setString(1, "JDBC测试");
int result_insert = pstmt_add.executeUpdate();
System.out.println(result_insert);
// 删除
String sql_delete = "delete from classes where id=?";
PreparedStatement pstmt_del = conn.prepareStatement(sql_delete);
pstmt_del.setInt(1, 6);
int result_delete = pstmt_del.executeUpdate();
System.out.println(result_delete);
// 修改
String sql_update = "update classes set classname=? where id=?";
PreparedStatement pstmt_mod = conn.prepareStatement(sql_update);
pstmt_mod.setString(1, "FBI组");
pstmt_mod.setInt(2, 7);
int result_update = pstmt_mod.executeUpdate();
System.out.println(result_update);
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
通过oracle jdbc thin 驱动连接oracle数据库的客户端程序,在连接中应用了SSL、钱包、双向认证、Secure External Password Store tns配置等技术,完全实战代码,非常有参考价值。
jdbc桥连接代码很有帮助的吧,可以参考一下
使用java通过jdbc访问Oracle数据库,并完成简单的连接登录,增删改查等功能,适合初学者进行参考学习的小demo代码。
以及基于JDBC连接MsSQL/MYSQL/Oracle/Access等常用数据库的示例代码,比较经典的低级问题,笔者也曾遇到过当初学JSp的时候,曾经因为不会连接数据库而很苦恼,这次你可参考压缩包中的对应实例实战JSP连接各种常见的...
主要介绍了Java使用JDBC连接Oracle_MSSQL实例代码,需要的朋友可以参考下
主要介绍了JDBC连接使用JDBC连接ORACLE的三种URL格式,每种格式通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
主要介绍了Shell脚本连接oracle数据库的实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
以及基于JDBC连接MsSQL/MYSQL/Oracle/Access等常用数据库的示例代码,比较经典的低级问题,笔者也曾遇到过当初学JSp的时候,曾经因为不会连接数据库而很苦恼,这次你可参考压缩包中的对应实例实战JSP连接各种常见的...
Jdbc连接各种数据库代码方法大全 1、Oracle8/8i/9i数据库(thin模式) Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为...
以及基于JDBC连接MsSQL/MYSQL/Oracle/Access等常用数据库的示例代码,比较经典的低级问题,笔者也曾遇到过当初学JSp的时候,曾经因为不会连接数据库而很苦恼,这次你可参考压缩包中的对应实例实战JSP连接各种常见的...
带学员课上做的oracle模仿百度分页样式的例子。比较适合初学者参考,jdbc工具类是自己写的,没有使用第三方分页组件。...项目中的数据库链接串是:"jdbc:oracle:thin:@192.168.1.101:1522:jc", "sh", "sh
该资料是《Oracle SQL高级编程》的源代码 对应的书籍资料见: Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐) 基本信息 原书名: Pro Oracle SQL 原出版社: Apress 作者: (美)Karen Morton Kerry ...
书名:Oracle Database 11g完全参考手册 原价:158.00元 作者:罗尼(Kevin Loney) 出版社:清华大学出版社 出版日期:2010-06-01 ISBN:9787302221920 字数: 页码:1240 版次:1 装帧: 开本:16开 编辑推荐 ...
书名:Oracle Database 11g完全参考手册 原价:158.00元 作者:罗尼(Kevin Loney) 出版社:清华大学出版社 出版日期:2010-06-01 ISBN:9787302221920 字数: 页码:1240 版次:1 装帧: 开本:16开 编辑推荐 ...
连接数据库代码 初学者可以参考
主要介绍了java实现的连接oracle/mysql数据库功能,结合实例形式分析了java基于jdbc连接Oracle与mysql的相关操作技巧,并附带完整实例代码与oracle+mysql数据库驱动包供读者下载参考,需要的朋友可以参考下
在练习这些代码的时候,你一定将jdbc的驱动程序放到服务器的类路径里,然后要在数据库里建一个表test,有两个字段比如为test1,test2,可以用下面SQL建 create table test(test1 varchar(20),test2 varchar(20) ...
连接数据库的成绩管理系统,数据库为oracle,里面用到了hibernate和jdbc,里面的创建表只能用一次,以为下一次就会出现异常!表不能创建两次!代码仅供参考
Struts新闻管理系统学习版简介: ...参考代码如下: Sql Server7.0/2000数据库 static private String strDriver = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; static private String strUrl = "jdbc