发送SQL语句

        连接一旦建立,就可用来向它所涉及的数据库传送 SQL 语句。JDBC对可被发送的 SQL 语句类型不加任何限制。这就提供了很大的灵活性,即允许使用特定的数据库语句或甚至于非 SQL 语句。然而,它要求用户自己负责确保所涉及的数据库可以处理所发送的 SQL 语句,否则将自食其果。例如,如果某个应用程序试图向不支持储存程序的DBMS 发送储存程序调用,就会失败并将抛出异常。JDBC 要求驱动程序应至少能提供 ANSI SQL-2 Entry Level 功能才可算是符合 JDBC标准TM 的。这意味着用户至少可信赖这一标准级别的功能。JDBC 提供了三个类,用于向数据库发送 SQL 语句。Connection 接口中的三个方法可用于创建这些类的实例。下面列出这些类及其创建方法:

Statement ─ 由方法 createStatement 所创建。Statement 对象用于发送简单的SQL 语句。
PreparedStatement ─ 由方法 prepareStatement 所创建。
PreparedStatement 对象用于发送带有一个或多个输入参数( IN 参数)的 SQL 语句。PreparedStatement 拥有一组方法,用于设置 IN 参数的值。

执行语句时,这些 IN 参数将被送到数据库中。PreparedStatement 的实例扩展了 Statement ,因此它们都包括了 Statement 的方法。

PreparedStatement 对象有可能比 Statement 对象的效率更高,因为它已被预编译过并存放在那以供将来使用。

CallableStatement ─ 由方法 prepareCall 所创建。CallableStatement 对象用于执行 SQL 储存程序 ─ 一组可通过名称来调用(就象函数的调用那样)的SQL 语句。CallableStatement 对象从 PreparedStatement 中继承了用于处理 IN 参数的方法,而且还增加了用于处理 OUT 参数和 INOUT 参数的方法。

以下所列提供的方法可以快速决定应用哪个 Connection 方法来创建不同类型的SQL 语句:

createStatement 方法用于:简单的 SQL 语句(不带参数) prepareStatement 方法用于: 带一个或多个IN 参数的 SQL 语句 经常被执行的简单 SQL 语句prepareCall 方法用于: 调用已储存过程

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值