您的位置:首页 > 编程语言 > Java开发

新手学JAVA(八)----走进JDBC

2015-06-27 10:55 477 查看
什么是JDBC

为什么要用JDBC

怎么用JDBC

什么是JDBC?

JDBC(Java Data Base Connectivity, Java 数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问。简单地说,JDBC 可做三件事:与数据库建立连接、发送 SQL 语句并处理结果。

为什么要用JDBC?

在没有JDBC之前,应用程序可以通过数据库厂商提供的API及SQL语句对数据库进行操作,如下图:



有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事,换言之,有了JDBC API,就不必为方位MySQL数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问SQLServer数据库又编写另一个程序,等等,程序员只需用JDBC API 写一个程序就够了,它可想相应的数据库发送SQL调用,同时将JAVA语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只需写一遍程序就可以让它在任何平台上运行。如下图:



怎么用JDBC?

JDBC的主要功能如下:

建立与数据库或其他数据源的连接

向数据库发送SQL命令

处理数据库的返回结果

下面通过一个例子来演示Java数据库一个用程序反问数据库的全过程。

import java.sql.*; //导入包
import java.sql.Connection;
import java.sql.DriverManager;

public class JDBCMain {

// 数据库的链接
private Connection con = null;
private Statement st = null; // 执行SQL语句的对象
private ResultSet rs = null; // 结果集对象

public JDBCMain() {

// 桥连接
try {

// 声明驱动程序
String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

// users就是数据源的名称
String ds = "jdbc:sqlserver://localhost:1433;databaseName=JavaSpecial";

// 数据源的登录名
String user = "sa";

// 数据源的密码
String password = "123456";

// 链接数据库
Class.forName(driver); // 加载数据库的驱动程序

con = DriverManager.getConnection(ds, user, password);

if (con != null) {

System.out.println("数据库链接成功!");
}
} catch (Exception e) {
System.out.println("数据库连接失败!" + e.toString());
}
}

/**
* 普通查询
* @param sqlQuery
*/
public void query(String sqlQuery) {

try {
// Connection con = null;
Statement st = con.createStatement(); // 得到Statement的实例
ResultSet rs = st.executeQuery(sqlQuery); // 执行SQL语句,返回结果集

// 当返回的结果集不为空是,并且还有记录时
while (rs != null && rs.next()) {
int stu_num = rs.getInt(1); // 获得当前记录的第1个字段的值
String name = rs.getString("name"); // 获得当前记录中"name"字段的值
int age = rs.getInt("age"); // 获得当前记录中"age"字段的值
int math = rs.getInt("math"); // 获得当前记录中"math"字段的值
int english = rs.getInt("english"); // 获得当前记录中"english"字段的值

System.out.println("学号=" + stu_num + "\t 姓名=" + name + "\t 年龄="
+ age + "\t 数学成绩=" + math + "\t 英语成绩=" + english);
}

} catch (Exception e) {
// 抛出异常
System.out.println("查询数据时出错" + e.toString());
}
}

/**
* /添加,删除,更新
*/
public void add_update_Del(String sql) {
try {
Statement st = con.createStatement(); // 生成Statement对象
int x = st.executeUpdate(sql); // 执行操作
System.out.println("操作成功" + x);
} catch (Exception e) {
System.out.println("数据修改时有误" + e.toString());
}

}

// 主程序
public static void main(String[] args) {

JDBCMain jc = new JDBCMain();

// 查询
String name = "张三";
String sqlQuery = "select * from stu_info where name='" + name + "'";
jc.query(sqlQuery);

//添加
String sqlAdd ="insert into stu_info values(7,'令仔',17,89,84)";
jc.add_update_Del(sqlAdd);

//更改
String sqlUpdate ="update stu_info set math =95 where name ='张三'";
jc.add_update_Del(sqlUpdate);

//删除
String sqlDelete ="delete from stu_info where name='张三'";
jc.add_update_Del(sqlDelete);
}
}


下面是源代码下载的链接:JDBC数据库连接测试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  JDBC