Java使用JDBC连接Oracle_MSSQL实例

来源:互联网 发布:零基础数据库培训骗局 编辑:程序博客网 时间:2024/06/06 08:54
一、Statement
import java.sql.*;public class TestJDBC {public static void main(String[] args) {Connection oracle_conn = null;Statement oracle_stmt = null;ResultSet oracle_rs = null;Connection mssql_conn = null;Statement mssql_stmt = null;ResultSet mssql_rs = null;try {Class.forName("oracle.jdbc.driver.OracleDriver");oracle_conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.215:1521:orcl", "username", "password");oracle_stmt = oracle_conn.createStatement();Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");mssql_conn = DriverManager.getConnection("jdbc:sqlserver://192.168.0.213:1433;DatabaseName=VIS", "username", "password");mssql_stmt = mssql_conn.createStatement();mssql_rs = mssql_stmt.executeQuery("select * from VideoBaseInfo");while(mssql_rs.next()) {System.out.println("正在插入VideoId:" + mssql_rs.getInt("VideoId") + "的记录...");oracle_stmt.executeUpdate("insert into VIDEO_BASEINFO values(" + mssql_rs.getInt("VideoId") + ",'"+ mssql_rs.getString("VideoName") + "','"+ mssql_rs.getString("VideoVersion") + "',"+ mssql_rs.getInt("VideoMp4Items") + ","+ mssql_rs.getInt("VideoRmvbItems") + ",'"+ mssql_rs.getString("VideoAliasName") + "','"+ mssql_rs.getString("VideoAge") + "'"+ ")");}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();} finally {try {if(oracle_rs != null) {oracle_rs.close();oracle_rs = null;}if(oracle_stmt != null) {oracle_stmt.close();oracle_stmt = null;}if(oracle_conn != null) {oracle_conn.close();oracle_conn = null;}if(mssql_rs != null) {mssql_rs.close();mssql_rs = null;}if(mssql_stmt != null) {mssql_stmt.close();mssql_stmt = null;}if(mssql_conn != null) {mssql_conn.close();mssql_conn = null;}} catch (SQLException e) {e.printStackTrace();}}}}

二、PreparedStatement

import java.sql.*;public class TestPreparedStatement {public static void main(String[] args) {Connection oracle_conn = null;PreparedStatement oracle_stmt = null;ResultSet oracle_rs = null;Connection mssql_conn = null;Statement mssql_stmt = null;ResultSet mssql_rs = null;try {Class.forName("oracle.jdbc.driver.OracleDriver");oracle_conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.215:1521:orcl", "username", "password");oracle_stmt = oracle_conn.prepareStatement("insert into Video_ItemInfo values(?, ?, ?, ?, ?, ?, ?, ?, ?)");Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");mssql_conn = DriverManager.getConnection("jdbc:sqlserver://192.168.0.213:1433;DatabaseName=VIS", "username", "password");mssql_stmt = mssql_conn.createStatement();mssql_rs = mssql_stmt.executeQuery("select * from VideoItemInfo");while(mssql_rs.next()) {System.out.println("正在插入ItemIndex:" + mssql_rs.getInt("ItemIndex") + "的记录...");oracle_stmt.setInt(1, mssql_rs.getInt("ItemIndex"));oracle_stmt.setInt(2, mssql_rs.getInt("VideoId"));oracle_stmt.setString(3, mssql_rs.getString("VideoItemName"));oracle_stmt.setString(4, mssql_rs.getString("VideoExtName"));oracle_stmt.setDouble(5, mssql_rs.getDouble("VideoSize"));oracle_stmt.setString(6, mssql_rs.getString("VideoPath"));oracle_stmt.setString(7, mssql_rs.getString("VideoType"));oracle_stmt.setDate(8, mssql_rs.getDate("VideoDate"));oracle_stmt.setString(9, mssql_rs.getString("ApplicationWay"));oracle_stmt.executeUpdate();}System.out.println("插入数据到Video_ItemInfo表中操作已完成!");} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();} finally {try {if(oracle_rs != null) {oracle_rs.close();oracle_rs = null;}if(oracle_stmt != null) {oracle_stmt.close();oracle_stmt = null;}if(oracle_conn != null) {oracle_conn.close();oracle_conn = null;}if(mssql_rs != null) {mssql_rs.close();mssql_rs = null;}if(mssql_stmt != null) {mssql_stmt.close();mssql_stmt = null;}if(mssql_conn != null) {mssql_conn.close();mssql_conn = null;}} catch (SQLException e) {e.printStackTrace();}}}}

三、CallableStatement

import java.sql.*;public class TestProc {/** * @param args */public static void main(String[] args) throws Exception {Class.forName("oracle.jdbc.driver.OracleDriver");Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.1:1521:SXT", "scott", "tiger");CallableStatement cstmt = conn.prepareCall("{call p(?, ?, ?, ?)}");cstmt.registerOutParameter(3, Types.INTEGER);cstmt.registerOutParameter(4, Types.INTEGER);cstmt.setInt(1, 3);cstmt.setInt(2, 4);cstmt.setInt(4, 5);cstmt.execute();System.out.println(cstmt.getInt(3));System.out.println(cstmt.getInt(4));cstmt.close();conn.close();}}

四、Batch

import java.sql.*;public class TestBatch {public static void main(String[] args) throws Exception {Class.forName("oracle.jdbc.driver.OracleDriver");Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.1:1521:SXT", "scott", "tiger");/*Statement stmt = conn.createStatement();stmt.addBatch("insert into dept2 values (51, '500', 'haha')");stmt.addBatch("insert into dept2 values (52, '500', 'haha')");stmt.addBatch("insert into dept2 values (53, '500', 'haha')");stmt.executeBatch();stmt.close();*/PreparedStatement ps = conn.prepareStatement("insert into dept2 values (?, ?, ?)");ps.setInt(1, 61);ps.setString(2, "haha");ps.setString(3, "bj");ps.addBatch();ps.setInt(1, 62);ps.setString(2, "haha");ps.setString(3, "bj");ps.addBatch();ps.setInt(1, 63);ps.setString(2, "haha");ps.setString(3, "bj");ps.addBatch();ps.executeBatch();ps.close();conn.close();}}

五、Transaction

import java.sql.*;public class TestTransaction {public static void main(String[] args) {Connection conn = null;Statement stmt = null;try {Class.forName("oracle.jdbc.driver.OracleDriver");conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:SXT", "scott", "tiger");conn.setAutoCommit(false);stmt = conn.createStatement();stmt.addBatch("insert into dept2 values (51, '500', 'haha')");stmt.addBatch("insert into dept2 values (52, '500', 'haha')");stmt.addBatch("insert into dept2 values (53, '500', 'haha')");stmt.executeBatch();conn.commit();conn.setAutoCommit(true);} catch (ClassNotFoundException e) {e.printStackTrace();} catch(SQLException e) {e.printStackTrace();try {if(conn != null){conn.rollback();conn.setAutoCommit(true);}} catch (SQLException e1) {e1.printStackTrace();}}finally {try {if(stmt != null)stmt.close();if(conn != null)conn.close();} catch (SQLException e) {e.printStackTrace();}}}}

六、ScrollResultSet

import java.sql.*;public class TestScroll {public static void main(String args[]) {try {new oracle.jdbc.driver.OracleDriver();String url = "jdbc:oracle:thin:@192.168.0.1:1521:SXT";Connection conn = DriverManager.getConnection(url, "scott", "tiger");Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);ResultSet rs = stmt.executeQuery("select * from emp order by sal");rs.next();System.out.println(rs.getInt(1));rs.last();System.out.println(rs.getString(1));System.out.println(rs.isLast());System.out.println(rs.isAfterLast());System.out.println(rs.getRow());rs.previous();System.out.println(rs.getString(1));rs.absolute(6);System.out.println(rs.getString(1));rs.close();stmt.close();conn.close();} catch (SQLException e) {e.printStackTrace();}}}

七、UpdateResultSet

import java.sql.*;public class TestUpdataRs {    public static void main(String args[]){try{    new oracle.jdbc.driver.OracleDriver();    String url="jdbc:oracle:thin:@192.168.0.1:1521:SXT";    Connection conn=DriverManager.getConnection(url,"scott","tiger");    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);        ResultSet rs=stmt.executeQuery("select * from emp2");        rs.next();    //更新一行数据    rs.updateString("ename","AAAA");    rs.updateRow();    //插入新行    rs.moveToInsertRow();    rs.updateInt(1, 9999);    rs.updateString("ename","AAAA");    rs.updateInt("mgr", 7839);    rs.updateDouble("sal", 99.99);    rs.insertRow();    //将光标移动到新建的行    rs.moveToCurrentRow();    //删除行    rs.absolute(5);    rs.deleteRow();    //取消更新    //rs.cancelRowUpdates();  }catch(SQLException e){    e.printStackTrace();  }    }}


原创粉丝点击