




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、SQL语言回顾1、Select select * from T where 2、Insert insert into T values()3、Create create table T()4、Delete delete from T where5、Update update T set t1= and t2=. where t3=6、Drop drop table T二、JDBC编程步骤 1、Load the DriverClass.forName( )|Class.forName( ).newInstance( )|new DriverName( )实例化时自动向DriverManager注册,不需显式调用DriverManager.registerDriver方法2、Connect to the DataBase DriverManager.getConnection( )3、Execute the SQL Connection.CreateStatement( ) Statement.executeQuery( ) Statement.executeUpdate( )4、Retrieve the result data 循环取得结果while(rs.next( )5、Show the result data 将数据库中的各种类型转换为Java中的类型(getXXX)方法6、Close Close the resultset ./ close the statement / close the connection 三、JDBC操作oracle数据库1、 JDBC连接oracle数据库:import java.sql.*;public class TestJDBC public static void main(String args) throws ClassNotFoundException, SQLException Class.forName(oracle.jdbc.driver.OracleDriver); /new oracle.jdbc.driver.OracleDriver(); Connection conn = DriverManager.getConnection(jdbc:oracle:thin::1521:solid, scott, tiger); 2、 向数据库中取字段,遍历数据库,并显示出相应字段:import java.sql.*;public class TestJDBC public static void main(String args) throws ClassNotFoundException, SQLException Class.forName(oracle.jdbc.driver.OracleDriver); /new oracle.jdbc.driver.OracleDriver(); Connection conn = DriverManager.getConnection(jdbc:oracle:thin::1521:solid, scott, tiger); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(select * from dept); while(rs.next() System.out.println(rs.getString(deptno); System.out.println(rs.getInt(deptno); rs.close(); stmt.close(); conn.close(); 3、 捕捉相关异常,完善JDBC编程:import java.sql.*;public class TestJDBC public static void main(String args) throws ClassNotFoundException, SQLException ResultSet rs = null; Statement stmt = null; Connection conn = null; try Class.forName(oracle.jdbc.driver.OracleDriver); conn = DriverManager.getConnection(jdbc:oracle:thin::1521:solid, scott, tiger); stmt = conn.createStatement(); rs = stmt.executeQuery(select * from dept); while(rs.next() System.out.println(rs.getString(deptno); System.out.println(rs.getInt(deptno); catch(ClassNotFoundException e) e.printStackTrace(); catch(SQLException e) e.printStackTrace(); finally try if(rs != null) rs.close(); rs = null; if(stmt != null) stmt.close(); stmt = null; if(conn != null) conn.close(); conn = null; catch(SQLException e) e.printStackTrace(); 四、JDBC编程高级1、 JDBC处理DML语句:import java.sql.*;public class TestDML 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::1521:solid, scott, tiger); stmt = conn.createStatement(); String sql = insert into dept2 values (99,develop,changsha); stmt.executeUpdate(sql); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace(); finally try if (stmt != null) stmt.close(); stmt = null; if (conn != null) conn.close(); conn = null; catch (SQLException e) e.printStackTrace(); 2、 JDBC处理DML语句2:import java.sql.*;public class TestDML2 public static void main(String args) if (args.length != 3) System.out.println(Arguments error,please enter again!); System.exit(-1); int deptno = 0; try deptno = Integer.parseInt(args0); catch (NumberFormatException e) System.out.println(Arguments error); System.exit(-1); String dname = args1; String loc = args2; Connection conn = null; Statement stmt = null; try Class.forName(oracle.jdbc.driver.OracleDriver); conn = DriverManager.getConnection(jdbc:oracle:thin::1521:solid, scott, tiger); stmt = conn.createStatement(); String sql = insert into dept2 values ( + deptno + , + dname + , + loc + );System.out.println(sql); stmt.executeUpdate(sql); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace(); finally try if (conn != null) conn.close(); conn = null; if (stmt != null) stmt.close(); stmt = null; catch (SQLException e) e.printStackTrace(); 3、 JDBC处理PreparedStatement,可以灵活指定SQL语句中的变量import java.sql.*;public class TestPrepStmt public static void main(String args) if (args.length != 3) System.out.println(Arguments error,please enter again!); System.exit(-1); int deptno = 0; try deptno = Integer.parseInt(args0); catch (NumberFormatException e) System.out.println(Arguments error); System.exit(-1); String dname = args1; String loc = args2; Connection conn = null; PreparedStatement pstmt = null; try Class.forName(oracle.jdbc.driver.OracleDriver); conn = DriverManager.getConnection(jdbc:oracle:thin::1521:solid, scott, tiger); pstmt = conn.prepareStatement(insert into dept2 values (?, ?, ?); pstmt.setInt(1, deptno); pstmt.setString(2, dname); pstmt.setString(3, loc); pstmt.executeUpdate(); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace(); finally try if (conn != null) conn.close(); conn = null; if (pstmt != null) pstmt.close(); pstmt = null; catch (SQLException e) e.printStackTrace(); 4、 JDBC处理储存过程import java.sql.*;public class TestProc public static void main(String args) throws Exception Class.forName(oracle.jdbc.driver.OracleDriver); Connection conn = DriverManager.getConnection(jdbc:oracle:thin::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(); 5、 JDBC进行批处理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::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(); 6、 JDBC处理Transactionimport 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::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(); mit(); 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.printStac
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三国演义课件教学
- 2025-2030中国工业冰乙酸市场销售模式及未来经营风险评估报告
- 霍山国企面试题目及答案精 编全方位解析求职者的必 备技能
- 如何学好物理演讲稿
- 学前教育面试技巧指导:学前班面试题库
- 大班科学公开课教案及教学反思《乌鸦喝水》
- 大学电工实训总结
- 小儿腹泻预防措施
- 南京钢铁股份有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版一套
- 小儿泄泻课件教学
- 销售合同合规培训
- 道路养护协议书范本
- 支付结算人行题库及答案
- 《城市更新的》课件
- 2024-2030全球商业电子垃圾回收行业调研及趋势分析报告
- 会议活动风险管理研究-全面剖析
- 机械传动知识课件2
- 2025年度运输业安全生产知识竞赛试题(附答案)
- 从业人员培训管理制度
- 酒店前台礼貌礼节培训
- 幸福心理学-(彭凯平)
评论
0/150
提交评论