1.prepared statement 和普通statement的区别?
2.用自己的类实现一个双链表 提供基本的增加 插入 删除功能

解决方案 »

  1.   

    Statement的操作:
    statement stmt =conn.createstatement();
    然后就可以使用stmt.executeQuery(String SQL)实行查询,使用stmt.executeUpdate(string sql)进行修改等。
    而preparedstatement 不同于statement,它将statement的两次操作变成一次操作,例如:
    preparedstatement prepstmt=conn.preparestatement(string sql) 
    而且使用preparedstatement操作比statement操作数据库更有效率。
      

  2.   

    prepare 是预处理,后面的sql语句经过编译,保存到数据库缓存里,下次执行语句,则从缓存里调用编译好的。提升效率。
      

  3.   

    zling1981(岁月的童话),我没听懂,请详细解释一下。它将statement的两次操作变成一次操作???啥意思?stmt.executeUpdate(string sql)中的sql不可以直接使update吗?
      

  4.   

    我面试新员工的时候就包括这两个题目。
    第1题,着重从编程的规范性和执行效率上解释。prepared更规范,SQL语法的错误率
    更低(例如字符串值的引号问题),修改程序更容易,参数值与SQL分离,清晰易懂;
    执行效率上,prepared使用了数据库的优化功能,执行更快。
    第2题,比较容易,从书上找个双向链表的例子,写出来就行了。我的题目要比这个
    还要难一些,是具体排队管理,有若干实用的功能。
      

  5.   

    this same to delphi's
    sql.add("select * from table");
    sql.prepared;
    sql.open;