学习《java程序设计》第十一章学习总结

11JDBC数据库操作

11.4   JDBC

Java提供了专门用于操作数据库的API,JDBC (Java DataBase Connection)

JDBC操作不同的数据库仅仅是连接方式上的差异而已,使用JDBC的应用程序一旦和数据库建立连接,就可以使用JDBC提供的API操作数据库(如图11.15).程序经常使用JDBC进行如下的操作 :

  • (1)与一个数据库建立连接。
  • (2)向数据库发送SQL语句。
  • (3)处理数据库返回的结果。

 

 

11.5连接MySQL数据库

Java运行环境将JDBC-数据库驱动转换为DBMS(数据库管理系统)所使用的专用协议来实现和特定的DBMS交互信息。

加载JDBC-MySQL数据库驱动

应用程序负责加载的JDBC-MySQL数据库驱动,代码如下:

try{  Class.forName("com.mysql.jdbc.Driver");

}

catch(Exception e){}

MySQL数据库驱动被封装在Driver类中,该类的的包名是com.mysql.jdbc,该类不是Java运行环境类库中的类,所以需要放置在jre的扩展中

 

11.6  查 询 操 作

1得到SQL查询语句对象

try{  Statement sql=con.createStatement();}

catch(SQLException e ){}

ResultSet rs = sql.executeQuery("SELECT * FROM students");

ResultSet rs = sql.executeQuery("SELECT name,height FROM students")

3.关闭连接

如果在代码

 ResultSet rs = sql.executeQuery("SELECT * FROM students");

之后立刻关闭连接con.close();程序将无法获取rs中的数据

11.6.1  顺序查询

所谓顺序查询,是指ResultSet对象一次只能看到一个数据行,使用next()方法移到下一个数据行,next()方法最初的查询位置,即游标位置,位于第一行的前面。next()方法向下(向后、数据行号大的方向)移动游标,移动成功返回true,否则返回false。

11.7  更新、添加与删除操作

1.更新

update  set 字段 = 新值 where <条件子句>

2.添加

insert into (字段列表) values (对应的具体的记录)

insert into values (对应的具体的记录)

3.删除

delete from  表名 where <条件子句>

11.8.2  使用通配符

String str = "select * from mess where height < ? and name= ? "

PreparedStatement sql = con.prepareStatement(str);

sql对象执行之前,必须调用相应的方法设置通配符?代表的具体值,如:

sql.setFloat(1,1.76f);

sql.setString(2, "武泽");

预处理SQL语句sql中第1个通配符?代表的值是1.76,第2个通配符?代表的值是'武泽'。通配符按着它们在预处理SQL语句中从左到右依次出现的顺序分别被称为第1个、第2个、……、第m个通配符。

11.11  连接SQL Server数据库

 

try {  Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
}
catch(Exception e){
}

try{
  String uri= 
"jdbc:sqlserver://192.168.100.1:1433;DatabaseName=warehouse";
      String user="sa";
      String password="dog123456";
      con=DriverManager.getConnection(uri,user,password);
   }
catch(SQLException e){
      System.out.println(e);
}

 

总结

  • JDBC技术在数据库开发中占有很重要的地位,JDBC操作不同的数据库仅仅是连接方式上的差异而已,使用JDBC的应用程序一旦和数据库建立连接,就可以使用JDBC提供的API操作数据库。
  • 当查询ResultSet对象中的数据时,不可以关闭和数据库的连接。
  • 使用PreparedStatement对象可以提高操作数据库的效率。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值