sql >> Database >  >> RDS >> Oracle

Hoe een sys_refcursor-gegevens in TOAD's DataGrid weer te geven?

Nadat je op F9 hebt gedrukt het dialoogvenster "Variabelen" verschijnt en u selecteert Type=Cursor in de vervolgkeuzelijst en drukt vervolgens op OK:

De reden dat u de foutmelding "ORA-24338:instructiehandle niet uitgevoerd" krijgt, is omdat u uw cursor sluit voordat deze wordt geopend.

Dit is het proces dat plaatsvindt:

  1. Procedure uitvoeren
  2. OPEN-instructie retourneert een aanwijzer naar de resultaatset in het geheugen (maar retourneert geen gegevens)
  3. CLOSE-instructie verwijdert de resultaten voordat ze worden geopend
  4. Proceduregesprek eindigt
  5. De client-aanroeper (in dit geval TOAD) probeert toegang te krijgen tot de resultatenstroom, maar de aanwijzer is ongeldig, dus er kan niets worden gelezen en de fout wordt gegenereerd

Oplossing:verwijder de close lcursor; verklaring.



  1. Gegevens exporteren uit een MySQL-database

  2. Zend_Db:Hoe verbinding maken met een MySQL-database via een SSH-tunnel?

  3. De startwaarde van een serienummer wijzigen - Postgresql

  4. Alle bovenliggende rijen in één SQL-query krijgen