В зависимости от ваших точных требований, я бы, вероятно, посмотрел на использование представления, чтобы только отображать действительные строки при запросе. Это создало бы впечатление, что были доступны только последние один час записей. Это также означает, что вам не нужно удалять строки ровно через час после их создания.
Затем, чтобы удалить строки, я бы посмотрел на использование DBMS_JOB или DBMS_SCHEDULER для удаления строк, как было предложено в некоторых других ответах.
Помните, что только из-за того, что ваше требование состоит в том, чтобы очищать строки из таблицы через час, вам, вероятно, нужно всего лишь удалить возможность запроса по ним, что вы можете сделать с представлением.