takidoso
Erfahrenes Mitglied
Hallo und Halli,
ich habe da irgendwie entweder ein Verständnisproblem oder einen Bug.
Eine kleine Routine (JDBC) soll ältere Datensätze aus einer DB löschen.
dafür habe ich folgenden Code
irgendwie bekomme ich aber nicht ernsthaft die records die ich erwarte. meistens bekomme ich keine reorganisiert, obwohl die zeitliche Vorgabe angewendet auf den Inhalt der Tabelle dies tun müsste.
Muss ich hier die Abfrage anders formulieren, obgleich es doch so auf den ersten Blick richtig zu sein scheint?
Hat jemand da vielleicht auch eine ähnliche Erfahrung gemacht und hat einen Hinweis?
Mit Dankbarkeit für alles was weiterführt
Takidoso
ich habe da irgendwie entweder ein Verständnisproblem oder einen Bug.
Eine kleine Routine (JDBC) soll ältere Datensätze aus einer DB löschen.
dafür habe ich folgenden Code
Java:
public void reorganize(long defermentPeriod)
{
m_strBuf.delete(0, m_strBuf.length());
m_strBuf.append("delete from MEMO_RECORDS").append("\n")
.append("where TMPST_USED >= ?");
PreparedStatement pStmtRecord = null;
try
{
pStmtRecord = m_conn.prepareStatement(m_strBuf.toString());
long dueDate = new java.util.Date().getTime()+defermentPeriod;
pStmtRecord.setTimestamp(1, new Timestamp(dueDate));
pStmtRecord.execute();
SimpleDateFormat dForm = new SimpleDateFormat("dd.MM.yyyy-HH:mm:ss:SSS");
logger.debug("cut off date:"+dForm.format(new Date(dueDate)));
if (pStmtRecord.getUpdateCount()>0)
{
logger.info("deleted records by reorganisation:"+pStmtRecord.getUpdateCount());
}
}
catch (SQLException sqlEx)
{
throw new RuntimeException(sqlEx);
}
finally
{
try
{
pStmtRecord.close();
}
catch (Throwable th)
{
logger.trace("trouble closing pStmtQRecord!",th);
}
}
}
Muss ich hier die Abfrage anders formulieren, obgleich es doch so auf den ersten Blick richtig zu sein scheint?
Hat jemand da vielleicht auch eine ähnliche Erfahrung gemacht und hat einen Hinweis?
Mit Dankbarkeit für alles was weiterführt
Takidoso