plsql
Uppdragsmodell och språk
Sök…
Uppdragsmodell i PL / SQL
Alla programmeringsspråk tillåter oss att tilldela värden till variabler. Vanligtvis tilldelas ett värde till variabeln, som står på vänster sida. Prototypen för de övergripande uppdragsoperationerna i alla samtida programmeringsspråk ser ut så här:
left_operand assignment_operand right_operand instructions_of_stop
Detta tilldelar höger operand till vänster operand. I PL / SQL ser denna operation så ut:
left_operand := right_operand;
Vänster operand måste alltid vara en variabel . Höger operand kan vara värde, variabel eller funktion:
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;
/
När kodblocket körs i SQL * Plus skrivs följande utgång ut i konsolen:
Hello from a value!
Hello from a value!
Hello from a function!
Det finns en funktion i PL / SQL som tillåter oss att tilldela "från höger till vänster". Det är möjligt att göra i SELECT INTO-uttalande. Prototyp av den här instansen hittar du nedan:
SELECT [ literal | column_value ]
INTO local_variable
FROM [ table_name | aliastable_name ]
WHERE comparison_instructions;
Den här koden tilldelar en bokstavlig karaktär till en lokal variabel:
set serveroutput on
declare
v_hello varchar2(32767);
begin
select 'Hello world!'
into v_hello
from dual;
dbms_output.put_line(v_hello);
end;
/
När kodblocket körs i SQL * Plus skrivs följande utgång ut i konsolen:
Hello world!
Tilldelning "från höger till vänster" är inte en standard , men det är värdefull funktion för programmerare och användare. Vanligtvis används det när programmerare använder markörer i PL / SQL - den här tekniken används, när vi vill returnera ett enda skalarvärde eller en uppsättning kolumner i en markörrad från SQL-markören.
Vidare läsning: