Mysql Server 5.5 でサーバー側に tomcat を使用しています。
データベース接続にSpringフレームワークを使用しています。
simpleJdbcInsert を使用してテーブルに行を挿入できるようにしたいと考えています。重複のために挿入が失敗した場合は、重複した行を置き換えてください。
そのsimpleJdbcInsertを行う方法はありますか、それともjdbcTemplateを使用して「ON DUPLICATE」ステートメントでクエリを作成するだけですか?
ありがとう
Mysql Server 5.5 でサーバー側に tomcat を使用しています。
データベース接続にSpringフレームワークを使用しています。
simpleJdbcInsert を使用してテーブルに行を挿入できるようにしたいと考えています。重複のために挿入が失敗した場合は、重複した行を置き換えてください。
そのsimpleJdbcInsertを行う方法はありますか、それともjdbcTemplateを使用して「ON DUPLICATE」ステートメントでクエリを作成するだけですか?
ありがとう
論理的には、二重の主キーがあると重複が発生します。
そのため、従来の JDBC または Hibernate を使用している場合は、新しい値を挿入する前に、同じ主キー値が既に存在するかどうかを確認する必要があります。
ただし、主キーがまだ設定されていない場合、または DBMS によって設定される場合は、別の問題が発生します。
JDBC では、新しいものを挿入する前にクエリを実行して古いスタイルの手動チェックを行う必要がありますが、
Hibernate では、更新するだけです。Hibernate は、重複がない場合は新しいものを作成しますが、重複がある場合は置き換えます。