`
zhddd
  • 浏览: 9000 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java之美_JDBC中prepareStatement与Statement的区别

阅读更多
1:创建时的区别:
   Statement stm=con.createStatement();
   PreparedStatement pstm=con.prepareStatement(sql);
执行的时候:
    stm.execute(sql);
    pstm.execute();
2: pstm一旦绑定了SQL,此pstm就不能执行其他的Sql,即只能执行一条SQL命令。
stm可以执行多条SQL命令。
3: 对于执行同构的sql(只有值不同,其他结构都相同),用pstm的执行效率比较的高,对于异构的SQL语句,Statement的执行效率要高。
4:当需要外部变量的时候,pstm的执行效率更高.

下面是一个statement的列子 :
Java代码
package com.JDBC.proc; 

import java.sql.*; 

public class StatementTest { 
      
    public static void main(String args[]){ 
          
        Connection conn=null; 
        Statement stm=null; 
        ResultSet rs=null; 
          
        try { 
            conn=DBTool.getConnection(); 
            String sql="select EmpNo,EName from emp " + 
                    "where empNo=7499"; 
            stm=conn.createStatement(); 
            rs=stm.executeQuery(sql); 
            while(rs.next()){ 
                System.out.println(rs.getInt(1)+"---"+rs.getString(2)); 
            } 
        } catch (SQLException e) { 
            e.printStackTrace(); 
        } catch (Exception e) { 

            e.printStackTrace(); 
        }finally{ 
            DBTool.release(rs, stm, conn); 
            } 
     } 
}



他的主要作用阐述Statement的用法。

下面是关于prepareStatement的列子:
Java代码
package com.JDBC.proc; 

import java.sql.*; 
public class PrepareStatement { 
      
    public static void main(String[] args){ 
          
        Connection conn=null; 
        PreparedStatement psmt=null; 
        ResultSet rs=null; 
          
        try { 
            conn=DBTool.getConnection(); 
            String sql="select EmpNo,Ename " + 
                    "from emp " + 
                    "where EmpNo=?"; 
            psmt=conn.prepareStatement(sql); 
            psmt.setInt(1, 7499); 
              
            rs=psmt.executeQuery(); 
            while(rs.next()){ 
                System.out.println(rs.getInt(1)+"---"+rs.getString(2)); 
           } 
        } catch (SQLException e) { 
            // TODO Auto-generated catch block 
            e.printStackTrace(); 
        } catch (Exception e) { 
            e.printStackTrace(); 
        }finally{ 
            DBTool.release(rs, psmt, conn); 
        } 
   } 
}
分享到:
评论

相关推荐

    Java_MySQL_JDBC.rar_JDBC程序_java jdbc mysql_java mysql jd_jdbc 样例

    Java JDBC (Java Database Connectivity) 是Java编程语言中用于与各种关系型数据库进行交互的一套标准接口。MySQL是一款广泛使用的开源关系型数据库管理系统,它与Java的JDBC接口结合,为开发者提供了强大的数据操作...

    java_access_jdbc.zip

    Java JDBC(Java Database Connectivity)是Java编程语言与各种数据库交互的一种标准接口。它允许Java程序通过JDBC API来执行SQL语句,实现对数据库的增删改查等操作。在这个"java_access_jdbc.zip"压缩包中,我们很...

    jdbc.rar_java jdbc_java 数据库 连接_jdbc_jdbc-odbc_数据 插入 删除

    Java JDBC(Java Database Connectivity)是Java编程语言与各种数据库之间通信的标准接口,它允许Java程序通过JDBC API来访问和操作数据库。在本教程中,我们将深入探讨如何在Java环境下,特别是MyEclipse开发环境中...

    JDBC(用PrepareStatement实现)

    **JDBC(用PrepareStatement实现)** Java Database Connectivity (JDBC) 是Java平台中的一个标准API,用于在Java应用程序和各种数据库之间建立桥梁。它允许Java开发者执行SQL语句,进行数据查询、更新和删除等操作。...

    JDBC PrepareStatement 使用(附各种场景 demo)

    在Java编程中,JDBC(Java Database Connectivity)是用于与各种数据库进行交互的一套标准接口。PrepareStatement是JDBC提供的一种预编译的SQL语句,它可以提高数据库操作的效率和安全性。本资源主要涵盖了使用JDBC ...

    JavaJDBC.rar_JAVA数据库_JDBC 驱动_jdbc

    Java数据库接口(Java Database Connectivity,简称JDBC)是Java编程语言中用来规范客户端程序如何访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC是Java平台中的一个核心API,允许Java...

    JDBC.zip_MYSQL_java mysql 库_jdbc

    Java Database Connectivity(JDBC)是Java编程语言中用于与各种数据库交互的标准API。在本教程中,我们将深入探讨如何使用Java和MySQL数据库通过JDBC进行数据的增、删、改、查操作。 首先,理解JDBC的核心概念至关...

    prepareStatement和Statement的区别

    prepareStatement和Statement是 Java 中两个常用的数据库操作接口,它们都可以用来执行 SQL 语句,但是它们之间有着明显的区别。 首先,从创建时的区别开始,Statement 需要通过 Connection 对象的 createStatement...

    JDBC_update.rar_JAVA数据库_jdbc upda

    在Java编程中,JDBC(Java Database Connectivity)是Java平台中用于与各种数据库进行交互的一组接口和类。它提供了一种标准化的方式来连接、查询和修改数据库中的数据。在这个例子中,我们可能看到的是一个名为...

    Access_JDBC30.zip

    标题中的"Access_JDBC30.zip"表明这是一个与Java数据库连接(JDBC)相关的资源包,特别是针对Microsoft Access数据库的。JDBC是Java平台中用于与各种数据库进行交互的一组接口和类,它允许Java应用程序执行SQL语句并...

    jdbc.rar_java sql server2000_jdbc

    Java JDBC(Java Database Connectivity)是Java编程语言中用于与各种数据库进行交互的一组接口和类。它是Java标准版(Java SE)的一部分,允许Java开发者执行SQL语句并处理数据库结果。在本例中,"jdbc.rar" 文件...

    JDBC编程技术.rar_JDBC编程例子_JDBC编程技术_brownmxh_java

    Java数据库连接(JDBC)是Java编程语言中用于与各种数据库进行交互的一组接口和类。JDBC允许Java开发者执行SQL语句,处理结果集,甚至进行事务管理。本资料"JDBC编程技术.rar"提供了关于JDBC编程的详细指南和实例,...

    JAVA_JDBC面向对象分页(初步设计二之oracle)

    在Java编程中,JDBC(Java Database Connectivity)是用于与数据库交互的标准API,它使得Java开发者能够连接到各种类型的数据库并执行SQL语句。在处理大量数据时,分页查询是一种有效的策略,可以提高应用程序的性能...

    JDBC.rar_jdbc_jdbc系统_销售管理系统

    JDBC(Java Database Connectivity)是Java语言中用于与各种数据库进行交互的一种标准接口。它由Sun Microsystems公司开发并定义,是Java平台的标准部分,允许Java开发者通过编写Java代码来访问和操作数据库。JDBC...

    JDBC-Student.rar_callablestatement_dbtoobject_java 学员 管理 系统_jdbc

    在学员管理系统的增删改查操作中,我们可以看到PrepareStatement如何动态设置参数,确保代码的可读性和安全性。 3. **ResultSetMetaData**:当使用Statement或PreparedStatement执行查询并获取ResultSet时,...

    JDBC.rar_jdbc登录_jdbc登录注册

    **JDBC(Java Database Connectivity)**是Java编程语言中用于与数据库交互的一种接口规范,它由Sun Microsystems开发并被纳入Java SE(标准版)的一部分。JDBC为开发者提供了一种标准化的方法来连接、查询和操作...

    jabc.rar_JDBC增删改查_java jdbc

    **JDBC(Java Database Connectivity)**是Java编程语言中用于规范客户端程序如何访问数据库的应用程序接口,它提供了标准的API让Java程序员能够连接到各种不同的数据库。本示例中的"jabc.rar"压缩包包含了一个简单...

    java数据库连接PrepareStatement

    ### Java 数据库连接 (JDBC) 之 PreparedStatement 在 Java 的数据库编程中,`PreparedStatement` 是一个非常重要的类,它继承自 `Statement` 类,并提供了更高级的功能来处理 SQL 语句,尤其是在处理参数化查询时...

    jdbc_demo.zip_DEMO_jdbc java demo

    Java JDBC(Java Database Connectivity)是Java编程语言中用于与数据库交互的一组接口和类,它提供了标准的方法来连接、查询和操作数据库。本DEMO主要展示了JDBC在实际开发中的基本使用方法,非常适合初学者理解和...

    sql2005 _jdbc与mysql_jdbc

    3. 执行SQL:`Statement stmt = conn.createStatement()` 或 `PreparedStatement pstmt = conn.prepareStatement(sql)` 4. 获取结果:`ResultSet rs = stmt.executeQuery()` 5. 关闭资源:`rs.close(); stmt.close()...

Global site tag (gtag.js) - Google Analytics