浅尝JDBC:基本数据库操作

JDBC

JAVA数据库连接(Java DataBase Connectivity),JAVA作为后台程序语言与数据库的连接是必不可少的。JDBC提供了一系列JAVA数据库操作API以便于与后台数据库进行交互。以下以MySQL为例简单小结JDBC的基础数据库操作


  1. 数据库驱动

连接MySQL需要在JVM中初始化数据库驱动。首先要下载一个jar包,其中包含了所需要的驱动程序,将jar包导入到项目文件中然后在程序代码中使用初始化驱动程序类的代码就能完成初始化。

jar包下载地址:https://dev.mysql.com/downloads/connector/

将jar包导入到项目文件中:

右键项目文件 Build Path → Cconfigure Build Path → java Build Path → Add External Jars 选择你下载的jar包的文件目录添加,apply → apply and close 当看到项目中有一个Referenced Libraries文件其中包含对应的jar则添加成功。

初始化程序驱动:

try {
	Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}

 

     2.数据库连接

完成初始化以后就可以连接数据库了,这里需要将用户名以及密码作为字符串参数传入,如此我们就得到了一个数据库连接。在连接数据库后需要关闭连接。

try {
	Class.forName("com.mysql.jdbc.Driver");
    //建立一个连接其中watermelon为MySQL中使用的数据库的名称,需要改成自己的,user为登录名,  password为密码
    Connection c = DriverManager.getConnection("jdbc:mysql://localhost:3306/watermelon?characterEncoding=UTF-8","user","password");
} catch (ClassNotFoundException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
} finally {
    //关闭连接
    if(c!=null){
        try {
			c.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
    }
}

     3.数据库操作

首先在数据库中建立一个t表其中包含一个int类型记录项用作测试表

SQL语句:

create table t (num int);

插入数据: 

插入、修改、删除的操作类似,将SQL语句作为参数传入Statement类的对象调用的execute()方法进行执行

try {
	//通过连接建立SQL语句类用于传输SQL语句
    Statement s = c.createStatement();

    //执行插入语句
    s.execute("insert into t values(1)");
    s.execute("insert into t values(2)");
    s.execute("insert into t values(3)");
} catch (SQLException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
} finally {
    if(s!=null){
        try {
	    	//s使用完后也需要关闭
            s.close();
	    } catch (SQLException e) {
	    	// TODO Auto-generated catch block
    		e.printStackTrace();
        }
    }
}

修改数据:

Statement s = c.createStatement();
//将num为1的记录增加100
String sql = "update t set num=" + (i+100) + " where num=1";

//执行修改语句
s.execute(sql);

删除数据:

Statement s = c.createStatement();
//将num为2的记录删除
String sql = "delete from t where num=2";

//执行删除语句
s.execute(sql);

查询数据:

查询数据返回一个结果集,因此需要引入一个ResultSet类来存放结果,通过按行读取结果集内的返回数据记录来获取结果,具体代码如下:

try {
	String sql="select * from t";
    //建立查询结果集
    ResultSet rs = s.executeQuery(sql);
    while(rs.next()) {
    //获取结果集中的记录数据项"num"为数据项的列名,依照列名访问值
    int num = rs.getInt("num");
    System.out.println(num);
    }
    //显示数据库表中的数据条数
    int total = 0;
    sql = "select count(*) from t";
    rs = s.executeQuery(sql);
    while(rs.next()) {
    total = rs.getShort(1);
    }
    System.out.println("t表中总共有:" + total + "条数据");

} catch (SQLException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
} finally {
    if(s!=null){
        try {
            s.close();
	    } catch (SQLException e) {
	    	// TODO Auto-generated catch block
    		e.printStackTrace();
        }
    }
}

暂时总结部分操作,to be continued...

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值