我必须在数据库中的2个表(比如table1& table2)中插入~40K records
。
table2中的插入是有条件的。当且仅当记录成功插入table1时,才应在table2中插入记录。
这可以批量完成吗?我正在使用JDBC驱动程序。我正在使用Oracle 10g XE。
这样做的最佳方法是什么?我应该使用多线程进行数据库池化吗?
答案 0 :(得分:0)
executeUpdate方法将返回受语句影响的行数。可以使用它作为比较来检查它是否已成功执行。
答案 1 :(得分:0)
我的建议是尽可能接近数据执行操作的业务逻辑。这意味着让PL / SQL过程充当您希望执行的功能的API。
这将使您的代码变得微不足道;对数据库过程的简单调用,它将返回一些给你结果的东西。
应用于数据的所有逻辑都是由几乎专门用于操作数据的代码执行的。与可以操作数据但不像PL / SQL一样的Java不同。顺便说一句,它也可能要快得多。(Youtube上的这个演示文稿非常有用,如果有点长 - https://www.youtube.com/watch?v=8jiJDflpw4Y)