sql >> Database >  >> RDS >> Mysql

Records van meer dan 1 jaar geleden verwijderen

Hiervoor heb je 2 stappen nodig. Allereerst heb je een methode nodig die als parameter de datum neemt waarvan je de berichten wilt verwijderen en je hebt geen @Query nodig annotatie.

Dus in je repository moet je zoiets hebben als

    @Modifying
    public void deleteByCreatedAtBefore(Date expiryDate);

Nu berekent u in uw servicemethode de datum en geeft u deze zo door

    public void performTweetCleanup(){
       //calculate date
       Calendar cal = Calendar.getInstance();
       Date today = cal.getTime();
       cal.add(Calendar.YEAR, -1);
       Date previousYear = cal.getTime();

       //call the method
       MyTweeterRepository.deleteByCreatedAtBefore(previousYear);
     }


  1. MySQL LAAD GEGEVENS LOKAAL INFILE Python

  2. Een tabelwaardeparameter doorgeven van C# naar Oracle opgeslagen procedure

  3. InnoDB duurt meer dan een uur om 600 MB bestand te importeren, MyISAM in een paar minuten

  4. MySQL INSERT-gegevens worden niet opgeslagen in de juiste db, alleen tijdelijk?