Table of Contents
Soms kan uw elektronische computer een foutcode weergeven die aangeeft dat gegevens niet gevonden worden in oracle pl sql. Er kunnen verschillende redenen zijn voor dit probleem.
Snelle en gemakkelijke pc-reparatie
omdat er geen gegevens zijn gevonden als resultaat van de objecten. ORA-01403 is de veel voorkomende fout. ORA-01403 komt naar voren, goed als een “SELECT INTO-clausule” die bedoeld is om een nieuw record uit een database op een unieke manier op te halen en toe te wijzen die variabelen zal plsql. Wanneer een SELECT INTO-geschiedenis er niet in slaagt een record uit een database te halen.
:
Conclusie: in deze tutorial leert de gebruiker over PL/SQL-uitzonderingen en schrijft hij de juiste manier waarop een exception-handler omgaat met exceptions.
Inleiding tot PL/SQL-uitzonderingen
PL/SQL neemt kennis van fouten, die allemaal voorkomen in een obstructie, procedure of anonieme functie, wanneer alle uitzonderingen worden opgevangen. Uitzonderingen kunnen bijvoorbeeld verschillende redenen hebben. Coderingsfout, spelerfout zelfs of apparaatfout.
Hoe moet ik dat doen Geen fout gevonden in Oracle?
om tabellen opnieuw te maken uit de oorspronkelijke stopdatabase zelf. Het goede nieuws is zonder twijfel dat de -ora 01403-fout letterlijk gemakkelijk te voorkomen is. Door een rechterschakelaar te maken zou het computerprogramma nu foutloos moeten racen en vroeg of laat weer veranderen.
Het is onmogelijk om op elke mogelijke uitzondering te anticiperen, aangezien u moeiteloos code schrijft om uitzonderingen af te handelen om het programma als regel te laten werken. Codeer dat
Wat u schrijft voor het afhandelen van vrijstellingen wordt vaak weglatingsafhandeling genoemd.PL/SQL
Een ban kan een uitzondering hebben die werkt met sectie, een of meer verschillende handlers zijn vereist.
start ... EEN UITZONDERING E1 indien TO ALS e2 DAN ALS ANDEREN DAN EINDE;
Codetaal: SQL-query (gestructureerde taal) (sql)
Als er een verschil optreedt in het uitvoerbare gedeelte, moet vaak de uitvoering van het huidige gedeelte worden gestopt, wordt het blok uitgevoerd en wordt de controle overgedragen aan de verschillende afhandelingssecties.
Als e1
zich voordoet, ontstaan er vlammen exception_handler1
. treedt op Wanneer een uitzondering nu e2
is, wordt exception_handler2
uitgevoerd. Als meerdere mensen uitzonderingen maken, wordt onze persoonlijke other_exception_handler
gelanceerd.
Na het uitvoeren van de uitzonderingshandler die u eenvoudigweg uitvoert, gaat de handler verder met een volgende instructie die is gebonden aan het gekoppelde blok. Als er bijna geen omsluitend blok is, keert de verwerking terug naar zijn aanroepende if-instructie, wat aangeeft dat de uitzonderingshandler zich meestal in een subroutine of omgeving op een bepaalde organisatie bevindt (SQL Developer of SQL*Plus), de uiteraard if exception-handler vaak in een bepaald anoniem blok.
Als een uitzondering vereist is, maar er geen uitzonderingshandler bestaat, zal onze groep de resulterende uitzondering hier bespreken in de handleiding over het verspreiden van onverwerkte uitzonderingen.Uitzonderingen
PL/SQL-voorbeelden
PL/SQL NO_DATA_FOUND
Nog een volgend voorbeeld
Het blok accepteert een vertrouwde ID van de klant als invoer en inkomsten van de klant:
UITLEG l_naam van klanten.NAME%TYPE; L_Customer_ID Klant.Klant_ID%TYP := &Klant_ID;BEGINNEN SELECT naam IN l_name klanten WHERE is gelijk aan customer_id customer_id; dbms_output. put_line('Klantnaam zou || l_name); EINDE;/
Codetaal: SQL (Structured Query Language) (sql)
Als u de patroon-ID blokkeert en als null invoert, zal Oracle de volgende fout tegenkomen:
Hoe gaat u om met gegevens die niet zijn bewezen in SQL-query’s?
Als u INTO selecteert voor één variabele en er worden geen toepassingen geretourneerd, krijgt u een geschikte NO DATA FOUND-fout. Ik vertrouw erop dat de juiste manier om de specifieke eerder genoemde code te schrijven is om enkele SELECT-instructies in hun echt BEGIN/EXCEPTION/END-blok te verdraaien.
Codetaal: SQL (Structured Query Language) (sql)
ORA-01403: geen artikelen gevonden
Houd er rekening mee dat de volgende regel niet wordt uitgevoerd, omdat de zichtbaarheid de uitzondering met de sectie enen verspreidde.
Hoe ga je dan om met geen uitzondering voor gegevens gevonden door PLSQL te gebruiken?
Antwoord: Om te voorkomen dat PLSQL de promotionele uitzonderingscode achtervolgt wanneer een geweldig record niet wordt ontvangen, kunt u eerst een kwantificering uitvoeren om tot een beslissing te komen over het aantal geretourneerde records. Voorbeeld: voor -- dit Vink het veld aan om er zeker van te zijn dat ten minste een goed record als geretourneerd wordt beschouwd. SELECTEER AANTAL(1) IN VAN v_count verkopen. Dat is het meest effectief, ditCodetaal: SQL (Structured Query Language) (sql)
dbms_output. put_line('clientnaam' - || l_name);
Om een meer beschrijvende boodschap te geven, kunnen kopers die voor het eerst een uitzondering maken om de volgende redenen wellicht een uitzondering toevoegen aan dit verwerkingsgedeelte:
Codetaal: SQL (Structured Query Language) (sql)
UITLEG l_name inclusief clients.NAME%TYPE; L_Customer_ID Customer.Customer_ID%TYP :komt overeen met &Customer_ID;BEGINNEN SELECTEER IN NAAM l_nameclients WAAR client_id resulteert in L_client_id; in Dbms_output .put_line('client name' || l_name); EEN UITZONDERING ALS DAN no_data_found dbms_output.put_line('Client || haya l_id_client || ' bestaat op geen enkele manier');EINDE;/
Als u dit blok met netnummer uitvoert en vervolgens klantnummer 7 invoert, krijgt u het volgende bericht:
Codetaal: SQL (Structured Query Language) (sql)
Client vier . bestaat niet
PL/SQL TOO_MANY_ROWS
Nog een voorbeeld
Verander eerst het modusblok van het bovenstaande voorbeeld zoals het zal volgen, naast het uitvoeren van:
De taal is vaak code: SQL (Structured Query Language) (sql)
UITLEG l_name klant. naam%type; l_customer_id customer.customer_id%TYP := &customer_id;BEGINNEN KIES bijnaam IN l_name klanten WAAR cliënt_id <= cliënt_id; dbms_output. put_line('klantnaam een absolute || l_name); EEN UITZONDERING IF NO_DATA_FOUND dan dbms_output.put_line('Klant heeft || l_customer_id || 'bestaat en nooit');EINDE;/
Ten tweede, voer klant-ID tien in en de meeste mensen krijgen de volgende foutmelding:
Snelle en gemakkelijke pc-reparatie
Wordt uw computer iets langzamer dan vroeger? Misschien krijg je steeds meer pop-ups, of lijkt je internetverbinding een beetje vlekkerig. Geen zorgen, er is een oplossing! ASR Pro is de revolutionaire nieuwe software die u helpt al die vervelende Windows-problemen op te lossen met slechts één klik op de knop. Met ASR Pro werkt uw computer in een mum van tijd als nieuw!

Codedialect: SQL (Structured Query Language) (sql)
ORA-01422: exact ophalen levert meer op om door te gaan naar het aantal gevraagde rijen
Er zullen hier zeker nog veel meer TOO_MANY_ROWS
uitzonderingen zijn die meestal niet noodzakelijkerwijs volledig worden afgehandeld door simpelweg code.aria-scribeby="shcb-language-9">
< code>UITLEG
client_id l_client_id; dbms_output.put_line('clientnaam wordt ha || l_name); EEN UITZONDERING NO_DATA_FOUND indien DAN dbms_output.put_line('Binnendiameter cliënt || client_id || bestaat niet'); IF TOO_MANY_ROWS DAN dbms_output.put_line('Database retourneert meer dan afzonderlijke gegevens van cliënt');EINDE;/ Geniet van een snellereNo Data Found Error In Oracle Pl Sql
Nenhum Dado Encontrado Erro No Oracle Pl Sql
Nessun Dato Trovato Errore In Oracle Pl Sql
Keine Daten Gefunden Fehler In Oracle Pl Sql
Oracle Pl Sql에서 데이터를 찾을 수 없음 오류
Inga Data Hittades Fel I Oracle Pl Sql
Aucune Donnee Trouvee Erreur Dans Oracle Pl Sql
No Se Encontraron Datos De Error En Oracle Pl Sql
Oshibka Dannyh Ne Najdena V Oracle Pl Sql