Java—数据库技术

时间:2025-02-22 11:04:02

JDBC(Java Database Connection,Java数据库连接)是一种用于执行SQL语句的JavaAPI(应用程序设计接口),它由一些Java语言写的类和界面组成。JDBC提供了一种标准的应用程序设计接口,使得开发人员使用Java语言开发完整的数据库应用程序变得极为简单。通过JDBC,开发人员几乎可以将SQL语句传递给任何一种数据库,而无需为各种数据库编写单独的访问程序。JDBC可以自动将SQL语句传递给相应的数据库管理系统。

JDBC扩展了Java的功能,例如在Applet中应用JDBC,可以实现与远程数据库的连接,实现不同平台数据库之间的对话。简单地说,JDBC完成下面三个操作:

(1) 与一个数据库建立连接。

Connection con = DriverManager.getConnection("jdbc:odbc:CallCenter","sa","");

(2) 向数据库发送SQL语句。

stmt = con.createStatement();

    rs = stmt.executeQuery("SELECT CID,CPin from tCustomer WHERE CID='z1'");

(3) 处理数据库返回的结果。

    while(rs.next())

    {

    String theInt = rs.getString("CID");

    String str = rs.getString("CPin");

   ...

    }

JDBC的接口分为两个层次:一个是面向程序开发人员的JDBC API;另外一个是底层的JDBC Driver API。JDBC API 被描述成为一组抽象的Java接口,应用程序可以对某个数据库打开连接,执行SQL语句并且处理结果。最重要的接口如下:

java.sql.DriverManager:处理驱动的调入并且对产生新的数据库连接提供支持。

java.sql.Connection:代表对特定数据库的连接。

java.sql.Statement:代表一个特定的容器,以对一个特定的数据库执行SQL语句。

java.sql.ResultSet:控制对一个特定语句的行数据的存取。

其中java.sql.Statement又有两个子类型:

(1)  java.sql.PreparedStatement:用于执行预编译的SQL语句。

(2)  java.sql.CallableStatement:用于执行对一个数据库内嵌过程的调用。

JDBC Driver API是指java.sql.Driver接口,封装了不同数据库的驱动程序(像Access、Foxpro、SQL Server等)。由于它是数据库底层处理,所以必须提供对java.sql.Connection、java.sql. Statement、java.sql.PreparedStatement和java.sql.ResultSet的实现。

1  数据库访问的步骤

编写数据库访问程序的步骤如下:

(1) 引入java.sql的包。

import java.sql.*;

(2) 声明变量。

Statement stmt;

PreparedStatement pstmt;

ResultSet rs;

(3) 加载驱动程序。

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

(4) 连接数据库。

Connection con = DriverManager.getConnection("jdbc:odbc:STU";,"","");

(5) 执行查询操作。

rs = stmt.executeQuery("SELECT 学号,姓名,班级 from Xuesheng WHERE 班级='025'");

...

pstmt = con.prepareStatement("UPDATE Xuesheng SET 班级 = ? WHERE 班级 = ?");

pstmt.setString(1,"计算机");

pstmt.setString(2,"025");

pstmt.executeUpdate();

...

(6) 关闭数据库。

con.close();