sql >> Database >  >> RDS >> Mysql

spring data JPA - mysql - findById() leeg tenzij findAll() eerder is aangeroepen

Ik zat met hetzelfde probleem. De hoofdoorzaak was de mismatch tussen niet-nullable @ManyToOne-relatie en de gegevens die in de tabel bleven staan. Ik had dit:

@ManyToOne(optional = false)
  @JoinColumn(name="batch_id")
  private Batch batch;

wat betekent dat batch_id in geen enkele rij null kan zijn. Mijn rijen hadden echter een null-waarde voor de externe sleutel batch_id. Na het verwijderen van optional =false (wat de verwachte bedrijfsregel is), begon findById te werken zoals verwacht.

Kreeg indicatie van deze thread:Ik ben het zat om iets met JpaRepository te doen, maar kan geen rij vinden met findById ,



  1. MS-Access-basisklasse en afgeleide objecten

  2. zorg ervoor dat het resultaat van de PDO-ophaalmethode false een fout of een leeg resultaat is

  3. Hoe krijg ik de ID van meerdere ingevoegde rijen in MySQL?

  4. Wat is het C#-equivalent van het geografische SQL-servergegevenstype in .net Framework 4.0?