sql >> Database teknologi >  >> RDS >> Oracle

Sådan hentes data fra markøren i Oracle ved hjælp af For Loop

I Oracle er For Loop den nemmeste måde at arbejde med Cursor på. Den åbner markøren, henter og lukker af sig selv. Nedenfor er eksempler på, hvordan man henter data fra Cursor i Oracle ved hjælp af For Loop.

Til eksempler på løkkemarkør

1. Markør uden parametereksempel

SET SERVEROUTPUT ON;DECLARECURSOR c_empISSELECT * FROM emp;BEGINFOR cur IN c_empLOOPDBMS_OUTPUT.put_line ('Medarbejdernavn:' || cur.ename || ' Job:' || cur.job);END LOOP;END;/

Output

Medarbejder Navn:SMITH Job:CLERKE Medarbejder Navn:ALLEN Job:SALGS Medarbejder Navn:WARD Job:SALGS Medarbejder Navn:JONES Job:LEDER Medarbejder Navn:MARTIN Job:SALGS Medarbejder Navn:BLAKE CENTER Job:MANAGEREm Job:Job CO. :ANALYSTEmedarbejdernavn:KING Job:PRESIDENTMedarbejdernavn:TURNER Job:SÆLGERMedarbejdernavn:ADAMS Job:CLERKEMedarbejdernavn:JAMES Job:CLERKEmedarbejdernavn:FORD Job:ANALYSTEmedarbejdernavn:MILLERKL, fuldført job:CLERKL, fuldført job:C.

2. Parametrér markør for sløjfeeksempel

SET SERVEROUTPUT ON;DECLARECURSOR c_emp (p_job emp.job%type)ISSELECT * FROM emp hvor job =p_job;BEGINFOR cur IN c_emp ('MANAGER')LOOPDBMS_OUTPUT.put_line ('Medarbejdernavn:' || cur.ename | | ' Job:' || cur.job);END LOOP;END;/

Output

Medarbejdernavn:JONES Job:MANAGEREMedarbejdernavn:BLAKE Job:MANAGEREMedarbejdernavn:CLARK Job:MANAGERPL/SQL-proceduren er gennemført.

Se også:

  1. Oracle Bulk Collect-eksempel ved hjælp af markør
  2. Fortsæt med at sløjfe markøren, selvom der opstod en fejl
  3. Eksporter data til CSV i Oracle
  1. SQLITE kan ikke opgradere skrivebeskyttet database fra version 1 til 2

  2. Hvordan migrerer man en eksisterende Postgres-tabel til en partitioneret tabel så gennemsigtigt som muligt?

  3. Hvordan bruger man strftime og datetime korrekt ved hjælp af Room library?

  4. Trimningstid fra datetime – en opfølgning