sql >> Database >  >> RDS >> PostgreSQL

Retour in pg-belofte

Die code heeft twee problemen tegelijk:

  • Ongeldig gebruik van belofte, wanneer binnen .catch je doet return result , zo wordt niet met afwijzingen van beloften omgegaan, u moet ofwel de foutafhandeling leveren, of de fout opnieuw weggooien/afwijzen.
  • ongeldig gebruik van pg-promise bibliotheek. Je gebruikt methode één dat wordt verondersteld te weigeren wanneer iets anders dan 1 record wordt geretourneerd, volgens de documentatie van de methode , en tegelijkertijd zeg je I need to catch if it returns more than one row... , wat een logische tegenstrijdigheid is.

Het resultaat hiervan is als volgt:uw query wordt met succes uitgevoerd en retourneert meer dan één record, wat op zijn beurt de methode één afwijzen, en dan neemt u de reden van de afwijzing en verandert u deze in een opgeloste door return result . te doen . Al met al wordt je code overal gekraakt.

Ten eerste met pg-promise je wordt verondersteld de juiste methode te gebruiken, afhankelijk van het aantal records dat je terug verwacht, zie De basis .

En behandel dan .then/.catch volgens uw bedrijfslogica. Ik kan hier niet specifieker zijn, omdat je hier geen verdere details over hebt gegeven.




  1. ORA-08177:kan toegang voor deze transactie niet serialiseren

  2. Hoe selecteer je een kolom met Hibernate?

  3. Inleiding tot PL/SQL VARRAY's in Oracle Database

  4. Dichtstbijzijnde match, deel 2