欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    数据库连接(JDBC)及其.ppt

    • 资源ID:6578706       资源大小:323.64KB        全文页数:23页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库连接(JDBC)及其.ppt

    第11章 数据库连接(JDBC)及其应用,本章要点:数据源的配置数据库驱动程序加载的方式数据库操作的流程事务控制预查询,11.1 JDBC基本编程概念,JDBC协议遵循了微软公司的ODBC模型,并与ODBC建立在同一方案的基础之上:遵循JDBC API协议的程序和JDBC驱动程序管理器通信,驱动程序管理器用嵌入的驱动程序访问数据库。从程序设计的角度来看,用JDBC类编程与使用一般的Java类编程并没有太大的不同。,11.1.1 设定ODBC数据源,-语法-2000版本String URL=jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=news;Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);Connection con=DriverManager.getConnection(URL,sa,sa);,sql server数据库驱动类的完全限定类名,演示:在工程中引入JDBC驱动程序包,数据库名称,-语法-2005版本String URL=jdbc:sqlserver:/localhost:1433;DatabaseName=news;Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver);Connection con=DriverManager.getConnection(URL,sa,sa);,sql server数据库驱动类的完全限定类名,演示:在工程中引入JDBC驱动程序包,数据库名称,1.SQL Server 2000数据库连接字符串Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver).newInstance();Connectionconn=java.sql.DriverManager.getConnection(jdbc:microsoft:sqlserver:/数据库服务器名或地址:1433;DatabaseName=数据库名,用户名,密码);所需jar包:msbase.jar、mssqlserver.jar、msutil.jar2.SQL Server 2005 数据库连接字符串:Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver).newInstance();Connectionconn=java.sql.DriverManager.getConnection(jdbc:sqlserver:/数据库服务器名或地址:1433;DatabaseName=数据库名,用户名,密码);,11.1.2 数据库URL要连接一个数据库,必须要指定源数据库,有时也需要指定相应的参数。例如:网络协议驱动程序需要指定端口、ODBC驱动程序等。JDBC用类似于常见的Net URL句法描述数据库。例如:我们通过JDBCODBC桥连接一个Access数据库myAccess:jdbc:odbc:myAccess String driverName=sun.jdbc.odbc.JdbcOdbcDriver;String URL=jdbc:odbc:db1;JDBC常规的URL句法是:jdbc:subprotocol name:datasource连接到Oracle数据库及SQL Server的URL分别如下:Oracle数据库jdbc:oracle:thin:127.0.0.1:1521:wangwd,数据库名称,因为连接Oracle数据库一般是通过客户端去进行的,Oracle客户端也被称为瘦型机(thin),对于127.0.0.1这是本地IP地址,也就是说Oracle数据库是安装在本机上的,当然在这里用户也可以采用如下的格式:jdbc:oracle:thin:localhost:1521:wangwd1521是Oracle访问端口号,wangwd是建立的Oracle数据库的名字,用户可以换成自己喜欢的名字。SQL Server 2000数据库URLjdbc:microsoft:sqlserver:/localhost:1433在这里采用默认的数据库,如果用户自己创立的数据库如myBook,可以采用如下的格式:jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=myBook,SQL Server 2005数据库URLjdbc:sqlserver:/localhost:1433在这里采用默认的数据库,如果用户自己创立的数据库如myBook,可以采用如下的格式:jdbc:sqlserver:/localhost:1433;DatabaseName=myBook驱动程序全称:com.microsoft.sqlserver.jdbc.SQLServerDriver,11.1.3 建立连接驱动程序管理器(DriverManager)类是负责选择数据库驱动程序和建立到数据库的连接的类,但驱动程序管理器只能激活已登录的驱动程序。登录驱动程序的方法如下:装入一个驱动程序类以自己登录驱动程序。例如可以用以下方式登录Oracle驱动程序:Class.forName(oracle.jdbc.driver.OracleDriver);用户也可以用下面的方式登录一个SQL Server的驱动程序:Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);登录我们刚刚建立的ODBC数据源的方法如下:Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);,现在我们假设安装了Oracle数据库,数据库名字为wangwd,则得到一个数据库的连接如下:Class.forName(oracle.jdbc.driver.OracleDriver);/登录Oracle数据库驱动程序String url=jdbc:oracle:thin:localhost:1521:wangwd;/数据库URLString userName=scott;/登录数据库用户名String password=tiger;/用户密码Connection con=DriverManager.getConnection(url,userName,password);接着我们再以笔者安装的SQL Server为例,并新建一个数据库为studentmanager:Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);String url=jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=studentmanager;String userName=sa;String password=;Connection con=DriverManager.getConnection(url,userName,password);,11.1.4 建立会话数据库建立连接后,要想操纵数据库,必须跟数据库建立一个会话。所谓会话就是从建立一个数据库连接到关闭数据库连接所进行的所有动作的总称,这与数据库会话是不同的。可以通过如下的代码得到一个会话:tryStatement st=con.createStatement();catch(SQLException e)通过这段代码我们可以知道,创建一个会话是建立在数据库连接的基础上的。现在我们得到了一个默认的会话。接下来就可以进行数据库的具体操作了。,11.1.5 操作数据库如果我们把数据库(database)看作是一个仓库,那到数据库的连接(Connection)就可以假想成一条通往仓库的阳光大道,那么会话(Statement)就可以看作是跑在这条大道上的一辆货车,我们对数据库进行的不同的操作(SQL语句),就是对这辆货车发出不同的指令(update、delete、query等),执行的结果就是从数据库中返回操作结果,这个结果就类似于从仓库拉回不同的货物。1.查询查询操作是数据库中最基本的语句,通过如下的语句可以对数据库执行一个查询,查询的结果是以结果集(ResultSet)的形式返回的。String sql=select*from student;ResultSet result=st.executeQuery(sql);,ResultSet类的若干方法,例11-1程序清单 QueryODBCTest.java/*通过这个程序,向读者展示比较完整的JDBC数据库操作的顺序,在这个例子中主要展示的查询*及格式输出。*/import java.sql.SQLException;import java.sql.Connection;import java.sql.Statement;import java.sql.ResultSet;import java.sql.DriverManager;import java.sql.Date;public class QueryODBCTest private Connection con;public static void main(String args)QueryODBCTest test=new QueryODBCTest();Connection con=test.getConnection();String sql=select*from student;test.getStudent(con,sql);,public void getStudent(Connection con,String sql)tryStatement st=con.createStatement();ResultSet rs=st.executeQuery(sql);while(rs.next()String name=rs.getString(姓名);String number=rs.getString(学号);Date date=rs.getDate(出生日期);String spe=rs.getString(专业);String address=rs.getString(籍贯);System.out.println(n姓名:+name+t学号:+number+t出生日期:+date+t专业:+spe+t籍贯:+address);,st.close();con.close();catch(SQLException e)e.printStackTrace();public Connection getConnection()String url=jdbc:odbc:myAccess;/数据库URLString userName=;/登录数据库用户名String password=;/用户密码try/登录JDBC-ODBC驱动程序Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);con=DriverManager.getConnection(url,userName,password);catch(SQLException e),e.printStackTrace();catch(ClassNotFoundException ex)ex.printStackTrace();return con;,2.建表下面我们将在SQL Server中利用数据库的相关操作建立一个student表,并插入相关的记录。在创建一个表格时,我们是通过:st.execute(sql);来实现的。execute方法的返回值是一个boolean型的,如果执行成功就返回true,反之则返回false。在执行插入记录的操作时,我们是通过:st.executeUpdate(sql);来实现的。它的返回值是一个int型的数值,它表示当前操作完成的记录数。,3.创建数据库在前面的示例中,我们都是通过直接将SQL语句嵌入到程序本身中,这种编码方式我们习惯上称之为硬编码。硬编码看起来比较容易编写,但存在一个很大的缺点,那就是兼容性不强,这里的兼容性指的是程序的兼容性。试想,假如我们按照以下的形式创建了一张表:String sql=CREATE TABLE SUTDENT(姓名 varchar(12)NOT NULL,+学号 varchar(10)NOT NULL,+出生日期 datetime NOT NULL,专业 varchar(10)NULL,+籍贯 varchar(30)NULL);如果由于某种原因需要将籍贯的字段长度更改为50位字符长,那只有重新修改程序代码,并重新编译,重新发布,这样做无疑是非常麻烦的。现在我们可以将类似的SQL语句也通过配置文件配置,并且当需要修改数据库结构时,我们只需要简单地修改一下属性文件就可以了。,11.2 预查询,接下来,我们再介绍JDBC在进行查询数据库操作方面的一个新的特性:预查询(prepared statement)。根据字面的意思,我们知道预查询也就是在执行真正的查询工作之前先做一部分准备工作,以适应真正的查询,这样做的目的是为了减少数据库操作的时间。现在假设我们想从建立的数据库中查询符合条件的一条记录:select 姓名,学号,专业,籍贯 from student where 姓名=需要用户输入的信息在这个SQL语句中,只有需要用户输入的信息是可变的,其他信息基本上不变,所以我们可以考虑把前面的信息先输入到数据库中,只要用户输入想查询的人名就可以了,这种情况就像是数据库在等待填空一样。在JDBC中预查询是用“?”来替代未知条件,那么上面的SQL语句就可以实现为:select 姓名,学号,专业,籍贯 from student where 姓名=?,11.3 小结,通过这一章的讲述,使读者能使我们的应用程序与数据库有机的结合起来,在这一章中,笔者通过示例示范了连接不同数据库的方法,并分别讲述了数据库的相关操作,希望读者在实际应用中仔细体会。尽管现在JDBC对于某些功能的支持不是太好,但随着JDBC2的应用与发展,会有很大的转变,在JDBC2中也会有更新的功能与改变体现出来,读者可以查看Sun公司关于JDBC2设计规范。,

    注意事项

    本文(数据库连接(JDBC)及其.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开