2017-02-17 6 views
0

~40K recordsをデータベースの2つのテーブル(たとえば、テーブル1 &テーブル2)に挿入する必要があります。別の挿入が成功した場合、dbに一括挿入する方法はありますか?

表2の挿入は条件付きです。レコードがtable1に正常に挿入された場合にのみ、レコードをtable2に挿入する必要があります。

これを一括して行うことはできますか?私はJDBCドライバを使用しています。私はOracle 10g XEを使用しています。

これを行うにはどのような方法が最適ですか?私はマルチスレッドでDBプーリングを行うべきですか?

+0

SQLプロシージャを作成し、javaから実行する方法です.... – Ahmed

+0

なぜあなたはJDBC-ODBCブリッジ、Oracle JDBCドライバにはるかに優れていますか? –

+0

@ MarkRotteveel、私はJDBCドライバを使用しています。それは私の間違いでした。ハイライトをありがとう。 –

答えて

0

executeUpdateメソッドは、ステートメントの影響を受ける行の数を返します。これを比較として使用して、正常に実行されたことを確認できました。

0

可能な限りデータに近い操作のビジネスロジックを実行することをお勧めします。これは、実行する機能のAPIとして機能するPL/SQLプロシージャを持つことを意味します。

これにより、コードが簡単になります。結果を与える何かを返すデータベースプロシージャへの簡単な呼び出しです。

データに適用されるすべてのロジックは、ほぼ排他的にデータを操作するように設計されたコードによって実行されます。 PL/SQLだけでなくデータを操作できるJavaとは異なります。ちなみに、それはまた、はるかに高速になる可能性があります(Youtubeでのこのプレゼンテーションは、少し長めの場合は非常に有益です)