【问题标题】:Improve mysql JDBC insert call改进 mysql JDBC 插入调用
【发布时间】:2010-03-31 21:37:18
【问题描述】:

我有一个遗留的 Java 系统,每次收到订单时,它都会对订单中的每个字段的存储过程进行 JDBC 调用。通常,每个订单都会调用存储过程 20 到 30 次。存储过程只是为每个字段插入到表中。

我需要改进此操作的性能。我的一个想法是创建一个插入查询字符串,该字符串在一个 JDBC 调用中执行多个插入。 MySql 支持多个插入字符串。

INSERT INTO PersonAge (name, age)
VALUES  ('Helen', 24),
        ('Katrina', 21),
        ('Samia', 22),
        ('Hui Ling', 25),
        ('Yumie', 29)

这样做的好处是每个订单只需要一次 JDBC 调用。关于如何提高性能的任何其他想法?

【问题讨论】:

    标签: java mysql jdbc


    【解决方案1】:

    创建准备好的语句,或批量更新(在 Java 中,它将是 PreparedStatementStatement.executeBatch())。准备好的语句可能会更快,因为您只需将值提交到数据库,而不是整个查询。尝试每一个,然后运行基准测试。

    【讨论】:

      猜你喜欢
      • 2015-06-20
      • 1970-01-01
      • 2014-03-19
      • 2018-11-13
      • 1970-01-01
      • 2017-06-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多