我在JSP中用jdbc访问access数据库,但是每次执行sql语句都要很长时间,但是同一sql语句用MySqlPlus查询很快就出结果了,请各位指点这是什么原因?是一次换乘的查询,语句如下:
select distinct A.name from 
(
select distinct name from stationinfo where checi in 
(
select checi from stationinfo where name ='石家庄'
)
) A,
(
select distinct name from stationinfo where checi in 
(
select checi from stationinfo where name like '齐齐哈尔'
)
) B 
where A.name = B.name order by A.name

解决方案 »

  1.   

    目前的代码很简单,只是执行了一下sql,然后遍历ResultSet,就没其他的了。而且我在OpenOffice中把mdb转成odb后用OpenOffice的查询执行这个sql语句也同样很慢,不知道为什么
      

  2.   

    LIKE 和 排序都对语句执行效率有影响的
      

  3.   

    我刚把‘like’换成‘=’了,并且去掉了排序,现在还在查询中,不知道什么时候才完成。
    是因为这个语句复杂了所以慢么?
      

  4.   

    换数据库吧,Access是为桌面应用设计的,不太适合做网站后台数据库,MySql会更适合一些。
      

  5.   

    我是vista系统,会有影响么?
    这个语句是查询两个车站之间的一次换乘,返回中转站名
      

  6.   

    换到windows 2003 Server下还是一样慢,我觉得可能是jdbc和access之间的关系影响了速度
      

  7.   

    换到sql server 2000下速度没有问题,很快,问题是出在access上的,是数据库影响了速度。谢谢大家了