当前位置:首页 » 编程语言 » javajdbc执行sql慢
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

javajdbc执行sql慢

发布时间: 2022-05-02 00:58:23

1. JDBC执行存储过程异常慢

1.connection不知道你是采用什么方式获取的,如果不是从连接池里取,你每connection.close()一次,下次get的时候会重新建立实际物理链接,这样会相当耗时。所以你检查一下是在获取connection时耗的时间多,还是在execute的时间多。代码:
long startTime = System.currentTimeMillis();
conn = getConnection(); // execute();
long endTime = System.currentTimeMillis();
System.out.println("获取链接的时间:" + (endTime - startTime));
执行的类似;

2.从你的存储过程的逻辑来说,要条件查询,更新某个字段的值,和入库,这三个步骤应该有输入参数的,那么你的这个参数是怎么传入的?
个人觉得你的这个存储过程可以优化成sql来执行,效率应该会更好:
首先,你把输入参数放入一个临时表;
比如结构是:
_id _field
查询的条件 更新的字段

// 更新_table中存在的记录的_field字段,并且只更新_table与_tmp键值相等的记录
UPDATE _table t SET _field=(SELECT MAX(_field) FROM _tmp WHERE _id=t._id) WHERE EXISTS (SELECT 'X' FROM _tmp WHERE _id=t._id);

// 选择_table与_tmp键值不相等的记录(即_table中不存在的记录)插入_table
INSERT INTO _table (_id,_field) (SELECT _id,_field FROM _tmp t WHERE NOT EXISTS (SELECT 'X' FROM _table WHERE _id=t._id));

这样的话,每次都是两个批量操作,而且不需要输入参数,直接调用就可以,唯一需要多做的工作就是做临时表。

2. java jdbc 执行sql语句批量操作问题

sql优化:
1.name字段创建索引
2.“table_c.*” 不要用”*“号,可以换成table_c.id,table_c.name,table_c.sex,table_c.email
如果可以的话,你和以在insert into table_a 中间加 append ,这样写 insert /*+ append */ into
希望能帮到你!

3. 通过jdbc执行sql比在plsql中慢好多

大哥,plsql是只检索出前面的20条,即rownum<20 的数据,JDBC是查全部。你把PLSQL的数据全展开,你看看要多少秒!

4. Java每秒执行一次sql影响性能吗

影响。因为Java每秒执行一次sql速度太慢,所以轻者影响整个系统性能,重者直接导致服务重启或死机。

5. 用JDBC连接 SQL Server 2012 数据库查询速度慢怎么解决

SQL
Server查询速度慢的原因有很多,常见的有以下几种:
1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)
2、I/O吞吐量小,形成了
瓶颈效应

3、没有创建计算列导致查询不优化。
4、
内存不足

5、
网络速度

6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)
7、锁或者
死锁
(这也是查询慢最常见的问题,是程序设计的缺陷)
8、sp_lock,sp_who,活动的用户查看,原因是读写
竞争资源

6. java代码使用spring的jdbctemplate查询大数据量时速度特别慢,该如何解决呢

第一,不要用*,第二,建议分页,因为数据太大,读到内存里也麻烦

7. java,jdbc,大量数据update更新效率很慢,哪位大神可怜可怜我吧

mysql使用jdbc的批量插入需要在连接Mysql的地方加上rewriteBatchedStatements=true
,也就是spring.datasource.url = jdbc:mysql://192.168.15.44:3306/ml_test?useSSL=false&useUnicode=true&characterEncoding=utf-8&rewriteBatchedStatements=true
,如果不加这个的话,和自己循环插入差不多

8. jdbc连接sql数据库访问数据超慢,急求帮助

这个应该跟驱动问题不大,只要是专用的驱动效率就应该不是问题。
慢,主要跟数据库,数据量,SQL相关。

9. JAVA sql语句执行缓慢问题

如果表中的数据量很大 你可以在数据库 上给表添加索引 是你查询的字段添加索引 这样会快很多。