`
yeshaoting
  • 浏览: 684296 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[小结]Java数据库连接 - 预编译SQL语句

    博客分类:
  • J2SE
 
阅读更多

 

3. 预编译SQL语句

将上述的Statement替换成PreparedStatement(表示预编译的 SQL 语句的对象),使用此对象可以高效地多次执行SQL语句。

 

一般步骤:

3.1 通过java.sql.Connection实例,调用prepareStatement(String sql)方法,以参数化的SQL语句作为参数,创建PreparedStatement对象.

3.2 通过java.sql.PreparedStatement实例,调用setXXX()方法,设置对应的参数值.

3.3 通过java.sql.PreparedStatement实例,调用executeQuery(),executeUpdate()等方法,执行数据库查询,更新等操作.

 

java.sql.Connection类中成员方法:

PreparedStatement prepareStatement(String sql)

    创建一个 PreparedStatement 对象来将参数化的 SQL 语句发送到数据库。

 

java.sql.PreparedStatement类中成员方法:

ResultSet executeQuery()

          在此 PreparedStatement 对象中执行 SQL 查询,并返回该查询生成的 ResultSet 对象。

 

int executeUpdate()

          在此 PreparedStatement 对象中执行 SQL 语句,该语句必须是一个 SQL INSERTUPDATE DELETE 语句;或者是一个什么都不返回的 SQL 语句,比如 DDL 语句。

 

 

关键代码:

String username = "ye";

String password = "ye";

String sql = "select * from user where username = ? and password = ?;";

 

db.stmt = db.conn.prepareStatement(sql);

db.stmt.setString(1, username);

db.stmt.setString(2, password);

      

ResultSet rs = db.stmt.executeQuery();

 

分享到:
评论

相关推荐

    JAVA:数据库操作封装

    - `prepstmt`:`java.sql.PreparedStatement`对象,用于执行预编译的SQL语句。 - `drivers`:数据库驱动名称。 - `url`:数据库连接URL。 - `user`:数据库用户名。 - `password`:数据库密码。 - `jndi_name`:JNDI...

    数据库连接方式-个人小结

    3. 在实际开发中,通常推荐使用JDBC,因为它更直接、高效,并且可以利用JDBC提供的高级特性,如预编译的SQL语句、批处理等。 了解和掌握这些连接方式,能帮助开发者灵活地选择适合项目的数据库连接方案,确保应用...

    java数据库连接PrepareStatement

    1. **预编译 SQL 语句**:在执行 SQL 语句之前,数据库会对其进行解析和优化,这可以显著提高执行效率。 2. **参数化查询**:允许使用占位符(通常为 `?`)来表示动态值,这些值可以在运行时被替换,从而提高了代码...

    JDBC与Java数据库编程

    此外,还有PreparedStatement和CallableStatement,它们分别用于预编译的SQL语句和存储过程调用。 - **ResultSet**:表示查询结果的记录集,可以逐行读取查询结果。 - **SQLException**:表示任何JDBC操作中发生的...

    Java数据库技术详解 DOC简版

    6.1 PreparedStatement预编译对象 6.2 CallableStatement存储过程对象 6.3 BatchedUpdate对象 6.4 Rowset行集合对象 6.5 JDBC的事务 6.6 本章小结 第7章 JDBC结合Servlet与JSP 的应用 7.1 Servlet概述...

    数据库系统概论:第八章SQL数据库编程

    1. **预编译:** 在编写程序时,所有的SQL语句都需加上特定的前缀,如在C语言中使用`EXEC SQL`,以`;`结束;而在Java中则使用`#SQL { }`。 2. **编译处理:** 预处理程序将含嵌入式SQL语句的程序转换成标准的函数调用...

    JDBC与Java数据库编程.pdf

    - **`PreparedStatement`**:预编译SQL语句,用于执行SQL命令。 - **`CallableStatement`**:执行存储过程。 - **`ResultSet`**:表示从数据库检索的结果集。 - **`SQLException`**:表示与数据库相关的错误。 ####...

    java连接oracle.txt

    - **PreparedStatement**: 预编译的 SQL 语句对象,它可以提高 SQL 执行效率和安全性。 - **setString()**: 设置 SQL 语句中的参数值,这里的 `1` 表示第一个参数的位置。 - **executeQuery()**: 执行查询语句并返回...

    JDBC个人小结

    ### JDBC个人小结 #### 一、JDBC简介与初始化 **JDBC**(Java Database Connectivity)是一种用于执行 SQL 语句的 Java API,可以为多种关系数据库提供统一访问,它由一组用 Java 编程语言编写的接口和类组成。...

    JSP连接数据库简单留言板实验报告

    在JSP中,我们需要先加载数据库驱动,然后创建数据库连接,接着编译SQL语句,执行查询或更新操作,最后关闭连接。在这个留言板系统中,我们会创建一个数据库表,包含留言的ID、用户名、内容和时间戳等字段。 连接...

    第八章 数据库编程.ppt

    预编译阶段,关系数据库管理系统的预处理程序将嵌入式 SQL 语句转换为函数调用。编译阶段,将含嵌入式 SQL 语句的主语言程序编译成目标语言程序。执行阶段,执行转换后的主语言程序。 嵌入式 SQL 语句与主语言之间...

    数据库系统概论(第五版)PPT第8章PPT学习教案.pptx

    嵌入式SQL的处理过程包括预编译阶段,其中SQL语句被转换为函数调用,然后主语言程序被编译成目标语言程序。所有SQL语句在主语言中需以`EXEC SQL`开头以作区分。 8.2 过程化SQL允许在SQL语句中包含流程控制逻辑,...

    Java_JDBC学习教程 由浅入深.doc

    - 不支持预编译 SQL 语句,可能导致 SQL 注入问题。 - 每次执行 SQL 语句时都需要重新解析和执行,效率较低。 #### 四、ResultSet 接口的使用详解 - `ResultSet` 对象用于存储执行查询语句后返回的结果。 - 可以...

    语言程序设计资料:第8章_数据库编程.ppt

    Statement用于执行静态SQL语句,而PreparedStatement则用于执行预编译的SQL语句,它可以提高性能,因为数据库只需要解析一次SQL语句。ResultSet接口则是用来存储SQL查询的结果。 8.2 MySQL的使用: MySQL是一个流行...

    MyEclipse 6 Java EE 开发中文手册.pdf

    - **功能**: 连接数据库、执行 SQL 语句等。 ##### 4.2.2 连接到 MyEclipse Derby 数据库 - **步骤**: - 打开 Database Explorer 透视图。 - 创建新的数据库连接。 - 输入连接参数,包括主机名、端口、用户名和...

    中国人民大学 王珊教授 数据库系统概论(4)ppt8

    在主语言程序中,SQL语句通过预编译步骤转化为函数调用,以便于编译器理解。为了区分SQL语句,所有SQL语句都需以`EXEC SQL`开头,并以分号`;`结束。例如: ```sql EXEC SQL <SQL语句>; ``` 在8.1.2部分,讲述了...

    Oracle Sql 优化讲座资料

    - **System Global Area (SGA)**:重点介绍Shared Pool,其中包括数据字典缓存、Library Cache(SQL语句、编译后的PL/SQL代码、Java类库)等。 - **SQL共享内存区**:讲解了程序全局区(Program Global Area, PGA)...

    达内科技jdbc学习笔记

    - **JDBC实现方式**:JDBC通过一系列API实现了与数据库的交互,包括连接数据库、执行SQL语句等功能。 - **JDBCAPI的操作步骤**:包括加载驱动、建立连接、执行SQL语句、处理结果、关闭资源等。 - **高级特性**:除了...

    JAVA程序开发大全---上半部分

    1.4 本章小结 5 第2章 MyEclipse集成开发环境的使用 6 2.1 MyEclipse集成开发工具界面 6 2.1.1 MyEclipse的菜单栏 7 2.1.2 MyEclipse的工具栏 13 2.1.3 MyEclipse的透视图 14 2.1.4 MyEclipse的视图 17 2.1.5 ...

Global site tag (gtag.js) - Google Analytics