JDBC链接Oracle参考代码

来源:互联网 发布:依视路和明月镜片 知乎 编辑:程序博客网 时间:2024/06/10 01:40
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();}}}

 

0 0
原创粉丝点击