深圳做装修网站费用多少钱,二级域名网站免费建站,网站推广的方法有,网站建设时间推进表模板下面有关jdbc statement的说法错误的是#xff1f;
A JDBC提供了Statement、PreparedStatement 和 CallableStatement三种方式来执行查询语句#xff0c;
其中 Statement 用于通用查询#xff0c; PreparedStatement 用于执行参数化查询#xff0c;而 CallableStatement则…下面有关jdbc statement的说法错误的是
A JDBC提供了Statement、PreparedStatement 和 CallableStatement三种方式来执行查询语句
其中 Statement 用于通用查询 PreparedStatement 用于执行参数化查询而 CallableStatement则是用于存储过程
B 对于PreparedStatement来说数据库可以使用已经编译过及定义好的执行计划
由于 PreparedStatement 对象已预编译过所以其执行速度要快于 Statement 对象”
C PreparedStatement中“?” 叫做占位符一个占位符可以有一个或者多个值
D PreparedStatement可以阻止常见的SQL注入式攻击
当看到这道题的时候十分蒙蔽
如果要取得Statement接口实例化对象 需要依靠Connection提供的方法完成 ·取得Statement接口对象public Statement createStatementthrows SQLException
取得数据库接口对象后使用以下两个方法实现数据库操作 ·数据更新public int executeUpdatethrows SQLException,返回更新行数; ·数据查询public ResultSet executeQuerythrows SQLException。编写数据库脚本
CREATE TABLE member(mid NUMBER,name VARCHAR2(20),birthday DATE DEFAULT SYSDATE,age number(3),note CLOB,CONSTRAINT pk_mid PRIMARY KEY(mid)
);数据更新操作
范例2数据增加 ·INSERT INTO 表名称列列....VALUES值值...; import java.sql.Connection;import java.sql.DriverManager;import java.sql.Statement;public class OracleDemo {public static final String DBDRIVER oracle.jdbc.driver.OracleDriver;public static final String DBURL jdbc:oracle:thin:localhost:1521:acehzh;public static final String USER scott;public static final String PASSWORD tiger;public static void main(String[] args) throws Exception {// 1.加载数据库驱动程序此时不需要实例化因为容器自己负责管理Class.forName(DBDRIVER);// 2.连接数据库Connection con DriverManager.getConnection(DBURL, USER, PASSWORD);// 3.进行数据库操作Statement sta con.createStatement();String sql INSERT INTO member(mid,name,birthday,age,note) VALUES (myseq.nextval,张三,TO_DATE(1998-10-10,yyyy-mm-dd),17,是个人);int len sta.executeUpdate(sql);System.out.println(影响的行数据 len);// 4.关闭数据库con.close();}}
分割线
范例3数据修改
·语法: UPDATE 表名称 SET 字段值....WHERE 更新条件(s); import java.sql.Connection;import java.sql.DriverManager;import java.sql.Statement;public class OracleDemo {public static final String DBDRIVER oracle.jdbc.driver.OracleDriver;public static final String DBURL jdbc:oracle:thin:localhost:1521:acehzh;public static final String USER scott;public static final String PASSWORD tiger;public static void main(String[] args) throws Exception {// 1.加载数据库驱动程序Class.forName(DBDRIVER);// 2.连接数据库Connection con DriverManager.getConnection(DBURL, USER, PASSWORD);// 3.数据库操作Statement sta con.createStatement();// 修改表String sql UPDATE member SET name李四,birthdaySYSDATE,age30 WHERE mid IN(2,4,5,6,7,8,9,10);int len sta.executeUpdate(sql);System.out.println(影响行数: len);// 4.关闭数据库con.close();}}
分割线
范例4删除数据
·语法:DELETE FORM 表名称 WHERE 删除条件(s);
import java.sql.Connection;import java.sql.DriverManager;import java.sql.Statement;public class OracleDemo {public static final String DBDRIVER oracle.jdbc.driver.OracleDriver;public static final String DBURL jdbc:oracle:thin:localhost:1521:acehzh;public static final String USER scott;public static final String PASSWORD tiger;public static void main(String[] args) throws Exception {// 1.加载数据库驱动程序Class.forName(DBDRIVER);// 2.连接数据库Connection con DriverManager.getConnection(DBURL, USER, PASSWORD);// 3.数据库操作Statement sta con.createStatement();// 修改表String sql DELETE FROM member WHERE mid IN(2,4,6,8,10);int len sta.executeUpdate(sql);System.out.println(删除成功,影响行数: len);// 4.关闭数据库con.close();}}
迅速的看一下评论找到一哥们
好你字最多你最优秀拿来一波粘贴
1.Statement、PreparedStatement和CallableStatement都是接口(interface)。 2.Statement继承自Wrapper、PreparedStatement继承自Statement、CallableStatement继承自PreparedStatement。 3. Statement接口提供了执行语句和获取结果的基本方法 PreparedStatement接口添加了处理 IN 参数的方法 CallableStatement接口添加了处理 OUT 参数的方法。 4. a.Statement: 普通的不带参的查询SQL支持批量更新,批量删除; b.PreparedStatement: 可变参数的SQL,编译一次,执行多次,效率高; 安全性好有效防止Sql注入等问题; 支持批量更新,批量删除; c.CallableStatement: 继承自PreparedStatement,支持带参数的SQL操作; 支持调用存储过程,提供了对输出和输入/输出参数(INOUT)的支持; Statement每次执行sql语句数据库都要执行sql语句的编译 最好用于仅执行一次查询并返回结果的情形效率高于PreparedStatement。 PreparedStatement是预编译的使用PreparedStatement有几个好处 1. 在执行可变参数的一条SQL时PreparedStatement比Statement的效率高因为DBMS预编译一条SQL当然会比多次编译一条SQL的效率要高。 2. 安全性好有效防止Sql注入等问题。 3. 对于多次重复执行的语句使用PreparedStament效率会更高一点并且在这种情况下也比较适合使用batch 4. 代码的可读性和可维护性。 JDBC statement中的PReparedStatement的占位符对应着即将与之对应当值并且一个占位符只能对应一个值如果能对应多个就会引起混淆。sql语句是确定的那么一个占位符必定只能对应一个值
这题最终选择c
文章仅个人理解来在各大网站。如有不合理之处欢迎吐槽。
阅读目录置顶)(长期更新计算机领域知识https://blog.csdn.net/weixin_43392489/article/details/102380691
阅读目录置顶)(长期更新计算机领域知识https://blog.csdn.net/weixin_43392489/article/details/102380882
阅读目录置顶)(长期科技领域知识https://blog.csdn.net/weixin_43392489/article/details/102600114
歌谣带你看java面试题 https://blog.csdn.net/weixin_43392489/article/details/102675944