Zoeken…


Opdrachtenmodel in PL / SQL

Alle programmeertalen stellen ons in staat om waarden aan variabelen toe te wijzen. Gewoonlijk wordt een waarde toegewezen aan de variabele, die aan de linkerkant staat. Het prototype van de algemene toewijzingsoperaties in elke hedendaagse programmeertaal ziet er als volgt uit:

left_operand assignment_operand right_operand instructions_of_stop

Hiermee wordt de rechteroperand toegewezen aan de linkeroperand. In PL / SQL ziet deze bewerking er als volgt uit:

left_operand := right_operand;

Linker operand moet altijd een variabele zijn . Rechter operand kan waarde, variabele of functie zijn:

set serveroutput on
declare
  v_hello1 varchar2(32767);
  v_hello2 varchar2(32767);
  v_hello3 varchar2(32767);
  function hello return varchar2 is begin return 'Hello from a function!'; end;
begin
   -- from a value (string literal)
  v_hello1 := 'Hello from a value!';
   -- from variable
  v_hello2 := v_hello1;
  -- from function
  v_hello3 := hello; 

  dbms_output.put_line(v_hello1);
  dbms_output.put_line(v_hello2);
  dbms_output.put_line(v_hello3);
end;
/

Wanneer het codeblok wordt uitgevoerd in SQL * Plus, wordt de volgende uitvoer afgedrukt in de console:

Hello from a value!
Hello from a value!
Hello from a function!

Er is een functie in PL / SQL waarmee we "van rechts naar links" kunnen toewijzen. Het is mogelijk om te doen in de instructie SELECT INTO. Prototype van deze instelling vindt u hieronder:

SELECT [ literal | column_value ]

INTO local_variable

FROM [ table_name | aliastable_name ]

WHERE comparison_instructions;

Deze code zal letterlijk teken toewijzen aan een lokale variabele:

set serveroutput on
declare
  v_hello varchar2(32767);
begin
  select 'Hello world!'
  into v_hello
  from dual;

  dbms_output.put_line(v_hello);
end;
/

Wanneer het codeblok wordt uitgevoerd in SQL * Plus, wordt de volgende uitvoer afgedrukt in de console:

Hello world!

Toewijzing "van rechts naar links" is geen standaard , maar een waardevolle functie voor programmeurs en gebruikers. Over het algemeen wordt het gebruikt wanneer programmeur cursors in PL / SQL gebruikt - deze techniek wordt gebruikt wanneer we een enkele scalaire waarde of set kolommen in de ene regel van de cursor van de SQL-cursor willen retourneren.

Verder lezen:



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow