122281742的gravatar头像
122281742 2018-01-11 11:14:57

为什么java JDBC连接MSSQL用预处理运行时间过长?

我最近学习了JDBC,然后运行了一些查询语句。
发现预处理比Statement要更慢一点,甚至查询不出来,这是为什么呀??
但是不用预处理,就能查出来。
具体也就是
Statement s = conn.createStatement();
ResultSet rs = s.excuteQuery("select * from user where user = 'ZHANGSHAN'");
这条就能执行出结果并打印
        PreparedStatement ps = conn.prepareStatement("select * from user where name=?");
        ps.setString(1,"zhangshang");
        ResultSet rs = ps.executeQuery();
这条就执行不出来,而且占用了很多进程,只能手动结束。

(可能数据量有点大),在本机小数据用同样的语句就能执行完毕,远程大数据库就执行停不下来。
求助,预处理比直接处理要慢一点吗?

所有回答列表(1)
搬砖运代码的gravatar头像
搬砖运代码  LV8 2018年1月11日

select * from user where user =

select * from user where name=

本身这两个就不是同一句话..没有可比性.

顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友