В моей базе данных три таблицы:
Первая из COMPANY
включает id
, name
и email
.
Вторая - COUPON
включает идентификатор ,
title
, dates
, price
и т.д ...
Третий - таблица присоединения COMPANY_COUPON
, которая включает id
компаний и id
купонов, которыми они владеют.
В Java у меня есть метод, который удаляет купоны с истекшим сроком действия, используя:
DELETE FROM COUPON WHERE END_DATE < CURRENT_DATE
Но после удаления купонов с истекшим сроком действия у меня все еще есть id
в COMPANY_ COUPON
таблице соединений, как я могу решить эту проблему?
@Override
public void removeExpiredCoupons() throws CouponSystemException {
String delete = "DELETE FROM COUPON WHERE END_DATE < CURRENT_DATE";
Connection connection = pool.getConnection();
try (PreparedStatement pstmt = connection.prepareStatement(delete)) {
pstmt.executeUpdate();
// This line can be removed
System.out.println("All expired coupos are removed.");
} catch (SQLException e) {
throw new CouponSystemException("Removing expired coupons is failed. ", e);
} finally {
pool.returnConnection(connection);
}
}