String sql = "insert into test(name) values(?)";
String sql = "insert into test(name) values(:name)";?是PreparedStatement的占位符
这个:name是代表什么?

解决方案 »

  1.   

    下面这种写法也是占位符的意思,好像是odbc中的!具体用法:
          query.prepare("insert into student (id, name) "
                       "values (:id, :name)");
         query.bindValue(0, 5);
         query.bindValue(1, "sixth");
      

  2.   

    能详细说下:name是啥意思吗
      

  3.   


    :name跟?的效果应该是一样的,都表示在这里将会给一个变量值
      

  4.   

    其实就给给你的占位符定个名字,这样你给他赋值的时候可以更明确。
    比如你用?占位符,那么赋值的时候只能用0,1,2.
    但是用了:name,:age,你就可以直接明确指出这个值要赋值给哪个,使程序看起来更清晰~
      

  5.   

    oracle:
    第一个是jdbc中绑定变量的方式
    第二个jdbc中也可以这样写,效果和?一样,也是PL/SQL里绑定变量的方式,PL/SQL里绑定变量不能使用?