用普通的sql
“select * from testtab where name='aa'”与参数形式
"slect * from testtab where  name=? "(根据所用语言作相关调整)作为一个变量,再通过对所处变量位置的?设定参数值这两种查询方式执行效率和性能哪个比较好,差别大不大 

解决方案 »

  1.   

    第二种比较快 SQL语句被预编译并且存储在PreparedStatement对象中。然后可以使用此对象高效地多次执行该语句。详情请参考 http://byval.bokee.com/230275.html
      

  2.   

    你是指动态SQL吧SQL1:
    execute immediate 'select * from testtab where name='''||v_name||'''';SQL2:
    execute immediate 'select * from testtab where name=:v' using v_name;如果频繁运行SQL2将比SQL1快,SQL2只需要一次硬解析,而SQL1需要多次。