DBで手動で作成したOracleテーブルの列に、列名の数とXMLファイルでの順序で行を挿入しています。XML は構成ファイルと見なされるため、ユーザーは列を管理し、ビジネス ニーズに応じて更新できます。私の Java コードは、XML ファイルを読み取り、XML とドキュメント (コンテンツ管理テクノロジ) API を介して列名を取得します。
これらの列の値を抽出し、行を DB テーブルに挿入できます。ここまでは問題ありません。私のクエリはタイマーで 3 時間実行されるため、このクエリが実行されます。これにより、同じ古いクエリが実行され、古い結果が DB にプッシュされるため、DB テーブルに重複した値が取得されます。
私はこれを避ける必要があります。誰かが私を助けてくれれば、それは素晴らしいことです.
コード:
String rObjectIdCheck = null;
pSelect = dbConn.prepareStatement("select r_object_id from financial_data");
ResultSet rsSelect = pSelect.executeQuery();
while(rsSelect.next()){
rObjectIdCheck =(String)rsSelect.getObject("r_object_id");
System.out.println("The OBJECTID from DB is:"+rObjectIdCheck);
System.out.println("The ObjectID from DCTM extract:"+rObjectID);
if (rObjectIdCheck!=rObjectID) {
pStmt = dbConn.prepareStatement("insert into financial_data ("+sbAttrName.toString()+")" + "values" +"("+sbAttrValue.toString()+")");
pStmt.addBatch();
pStmt.executeBatch();
}
}
sbAttrValue.delete(0, iSBValue);
sbAttrName.delete(0,iSBName);
}