动态网络建设第七章.pptVIP

  • 3
  • 0
  • 约6.65千字
  • 约 32页
  • 2018-03-09 发布于河南
  • 举报
动态网络建设第七章

第7章访问数据库 7.1 JDBC概述 JDBC(Java Database Connectivity)是一种可用于执行SQL语句的Java API,它为访问相关数据库提供了标准的库。本质上来说就是调用者(程序员)和实现者(数据库厂商)之间的协议。JDBC 的实现由数据库厂商以驱动程序的形式提供。JDBC API 使得开发人员可以使用纯 Java 的方式来连接数据库,并进行操作 JDBC能实现以下3个方面功能:同一个数据库建立连接、向数据库发送SQL语句和处理数据库返回的结果。 7.2 使用JDBC-ODBC桥接器访问数据库 例1:查询本地SQL Server服务器上的数据库school数据库中表course的记录。 seventh_example1.jsp: 使用JDBC-ODBC桥接器访问数据库分析: 1、创建ODBC数据源 2、加载驱动程序 在JDBC连接到ODBC数据库之前,必须加载JDBC-ODBC桥驱动程序,代码为Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); 3、和ODBC数据源指定的数据库建立连接 Connection是与数据库连接对象,一个应用程序可与单个数据库有一个或多个连接,或者与多个数据库有多个连接。打开连接对象与数据库建立连接的标准方法是 Connection con=DriverManager.getConnection(jdbc:odbc:数据源名,用户名,口令); 4、访问数据库 1)Statement用于将SQL语句发送到要访问数据库中,并获取指定SQL语句的结果。要从指定的数据库连接得到一个Statement(java.sql包)实例,代码如下: Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); 2)通过ResultSet来获得查询结果,通常对数据库查询返回一个包含查询结果的ResultSet对象。 ResultSet rs = stmt.executeQuery(SELECT * FROM course); ResultSet接口主要方法: 1)void beforeFirst() throws SQLException 移动记录指针到第一条记录前 2)boolean first() throws SQLException 移动记录指针到第一条记录 3)boolean last() throws SQLException 移动记录指针到最后一条记录 4)void afterLast() throws SQLException 移动记录指针到最后一条记录后 5)boolean absolute(int?row) throws SQLException 移动记录指针到指定位置,第一行为1。 6)boolean next() throws SQLException 移动记录指针到下一条记录 7)String getString(int?columnIndex) throws SQLException 取得指定字段值,columnIndex为查询结果集中列索引值 8)String getString(String?columnName) throws SQLException 取得指定字段值,columnName为列名 7.3 使用纯Java数据库驱动程序 7.3.1连接SQL SERVER 数据库 例2:seventh_example2.jsp 使用纯Java数据库驱动程序访问SQL SERVER 2000数据库分析: 1、下载SQL?Server?2000?driver?for?JDBC,?该驱动安装成功后,请将安装目录下的lib目录下的三个.jar文件(msbase.jar,mssqlserver.jar,msutil.jar)加到CLASSPATH中;如果你使用的是MyEclipse,将这三个文件根据IDE的提示加到工程中也可,就是把这3个jar文件拷贝到WEB-INF/lib目录下。? 2、升级你的SQL?Server?2000,为其打上SQL Server 2000 SP4补丁。如果你的程序在运行时提示:Error?establishing?socket,一般情况下,打上SQL?Server?2000的补丁就可解决。若不让装,删除注册表PendingFileRenameOperations键。 3、驱动的加载方法? 在建立连接之前,要先加载SQL?Server?2000?JDBC的驱动,代码形式如下:? Class.forName(com.microsoft.jdbc.

文档评论(0)

1亿VIP精品文档

相关文档