收藏 分销(赏)

jdbc连接数据库代码笔记简单易懂niiT培训.docx

上传人:仙人****88 文档编号:11233857 上传时间:2025-07-09 格式:DOCX 页数:12 大小:153.64KB 下载积分:10 金币
下载 相关 举报
jdbc连接数据库代码笔记简单易懂niiT培训.docx_第1页
第1页 / 共12页
jdbc连接数据库代码笔记简单易懂niiT培训.docx_第2页
第2页 / 共12页


点击查看更多>>
资源描述
package com.niit; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JDBCExample { public static void main(String[] args) { Connection conn = null; Statement stmt = null; ResultSet rs = null; // 1、加载驱动程序类 new oracle.jdbc.driver.OracleDriver(); try { // 2、得到一个数据库的链接 conn = DriverManager.getConnection( "jdbc:oracle:thin:@192.168.7.99:1521:recruit", "user30", "user30"); // 3、得到Statement,真正执行SQL语句的 stmt = conn.createStatement(); // 4、进行查询,得到结果集 rs = stmt.executeQuery("select * from country"); // 5、遍历结果集,进行显示 while (rs.next()) { System.out.print("code:" + rs.getString(1)); System.out.print("\tcountry:" + rs.getString(2)); System.out.println(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { if (rs != null) rs.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { if (stmt != null) stmt.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { if (conn != null) conn.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } 第二种连接数据库的方式: ODBC JDBC App ODBC Open DataBase Connectivity JDBC Java DataBase Connectivity Driver 驱动类的接口 DriverManager,驱动程序管理器类。提供对数据库驱动程序的管理功能 首先准备驱动程序,加载到内存中,就会自动注册到manager内 当我们连接和操作的过程中就会自动调用底层的数据库的驱动程序 Connection接口,表示一个连接 Statement接口,实际上可以认为就是拥有真正执行SQL的功能的对象 ResultSet接口,结果集,封装了查询结果,可以对其进行遍历 JDBC连接方式四种: 1、使用相关的数据库协议直连数据库(thin)。速度快,最直接。需要一份驱动程序 2、JDBC-ODBC桥式驱动。不需要准备驱动程序,较方便。有平台依赖性。 3、Java到本地API。(OCI) 将JDBC的调用指令变换为对本地的数据库工具的API的调用 需要在本地上安装目标数据库的客户端程序 4、以与数据库无关的网络协议的方式发送JDBC调用, 数据库服务器端需要安装中间件 数据库URL 用于标识目标数据库 主协议名 : 子协议名 : 子名称 jdbc :oracle:thin:@192.168.7.99:1521:recruit jdbc : mysql ://192.168.7.99:3306/dbname 加载驱动的三种方式: 连接多个数据库驱动用冒号,下面是三种方式: 在JDBC里,数据库是默认autocommit执行的 /* 通过jdbc:odbc:drive创建一个数据库连接实例 */ public void creatConnectInstance(){ String strurl="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=C:\\pmis.mdb"; try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); conn = DriverManager.getConnection(strurl); stmt = conn.createStatement(); }catch(Exception e){ System.out.println(e.getMessage()); } } 完整实例JDBCExample.java package com.niit; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JDBCExample { public static void main(String[] args) { Connection conn = null; Statement stmt = null; ResultSet rs = null; // 1、加载驱动程序类 // new oracle.jdbc.driver.OracleDriver(); try { // Class.forName("oracle.jdbc.driver.OracleDriver"); System.setProperty("jdbc.drivers", "oracle.jdbc.driver.OracleDriver:" + "com.microsoft.jdbc.sqlserver.SQLServerDriver"); // 2、得到一个数据库的链接 conn = DriverManager.getConnection( "jdbc:oracle:thin:@192.168.7.99:1521:recruit", "user30", "user30"); // 3、得到Statement,真正执行SQL语句的 stmt = conn.createStatement(); // 4、进行查询,得到结果集 rs = stmt.executeQuery("select * from country"); // 5、遍历结果集,进行显示 while (rs.next()) { System.out.print("code:" + rs.getString(1)); System.out.print("\tcountry:" + rs.getString(2)); System.out.println(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } // catch (ClassNotFoundException e) // { // // TODO Auto-generated catch block // e.printStackTrace(); // } finally { try { if (rs != null) rs.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { if (stmt != null) stmt.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { if (conn != null) conn.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } TestDDL.java package com.niit; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class TestDDL { /** * @param args */ public static void main(String[] args) { try { Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@192.168.7.99:1521:recruit"; Connection conn = DriverManager.getConnection(url, "user30", "user30"); Statement stmt = conn.createStatement(); stmt .execute("create table myCountry(ccountrycode char(4),ccountry varchar2(10))"); stmt.executeUpdate("insert into mycountry values('001','中华民国')"); ResultSet rs = stmt.executeQuery("select * from mycountry"); while (rs.next()) { System.out.print("code:" + rs.getString(1)); System.out.print("\tcountry:" + rs.getString(2)); System.out.println(); } rs.close(); stmt.close(); conn.close(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } TestDML.java package com.niit; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class TestDML { public static void main(String[] args) { Connection conn = null; try { Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@192.168.7.99:1521:recruit"; conn = DriverManager.getConnection(url, "user30", "user30"); Statement stmt = conn.createStatement(); stmt.executeUpdate("insert into country values('091','魏')"); stmt.executeUpdate("insert into country values('092','蜀')"); stmt.executeUpdate("insert into country values('093','吴')"); ResultSet rs = stmt.executeQuery("select * from country"); while (rs.next()) { System.out.print("code:" + rs.getString(1)); System.out.print("\tcountry:" + rs.getString(2)); System.out.println(); } rs.close(); System.out.println("----------------------我是华丽的分隔线-------------------------"); conn.setAutoCommit(false); stmt.executeUpdate( "update country set ccountry='晋' where ccountrycode='091'"); stmt.executeUpdate( "delete from country where ccountrycode='092' or ccountrycode='093'"); mit(); rs = stmt.executeQuery("select * from country"); while (rs.next()) { System.out.print("code:" + rs.getString(1)); System.out.print("\tcountry:" + rs.getString(2)); System.out.println(); } rs.close(); stmt.close(); conn.close(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { try { conn.rollback(); } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } e.printStackTrace(); } } }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服