第一次看到有人在top后面用?号设置参数的,可能是不支持吧。就用拼字符串的吧

解决方案 »

  1.   

    String sql = "select top ? * from tt where a not in(select top ? a from tt)"
    将?使用()号括起来,如:String sql = "select top (?) * from tt where a not in(select top (?) a from tt)"即可
      

  2.   

    楼主改成固定的SQL语句后能执行就说明不是SQL不支持的问题,找找其他的问题吧。
      

  3.   

    写的没有问题。说明top后面的?不能解析。
    你应该是为了进行分页。如果继续想使用参数的话,不防写成存储过程。传递参数。
    要不就直接拼接做吧!
      

  4.   

    lz
    能不能调试到这里看看ps里的sql是否正确了rs = ps.executeQuery();
      

  5.   

    是啊,那个top后面好像不支持参数的,得用拼字符串的形式
      

  6.   

    这个使用PreparedStatement使用sql使用的方式,当然不能直接在sql中执行
      

  7.   

    这个使用PreparedStatement使用sql使用的方式,当然不能直接在sql中执行