我正在将行插入到我在数据库上手动创建的 oracle 表的列中,其中列名的数量和 XML 文件中的顺序。XML 被视为配置文件,因此用户可以根据业务需要管理列并更新它们。我的 java 代码读取 XML 文件并从 XML 和通过 Document(内容管理技术)API 提取列名。
我可以提取这些列的值并将这些行插入到数据库表中。直到这里我都很好,因为我的查询在计时器上运行了三个小时,所以这个查询运行,因此我将重复的值放入数据库表中——因为相同的旧查询运行并且旧结果被推送到数据库中。
我需要避免这种情况,如果有人可以帮助我,那就太好了。
代码:
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);
}