An assignment statement sets a variable or a formal parameter of OUT or IN OUT mode specified on the left side of the assignment operator := to the evaluated expression specified on the right side of the assignment operator.
variable := expression;
variable is an identifier for a previously declared variable, OUT formal parameter, or IN OUT formal parameter.
expression is an expression that produces a single value. The value produced by the expression must have a compatible data type with that of variable.
The following example shows the typical use of assignment statements in the executable section of a procedure:
CREATE OR REPLACE PROCEDURE dept_salary_rpt (
p_deptno NUMBER
)
IS
todays_date DATE;
rpt_title VARCHAR2(60);
base_sal INTEGER;
base_comm_rate NUMBER;
base_annual NUMBER;
BEGIN
todays_date := SYSDATE;
rpt_title := 'Report For Department # ' || p_deptno || ' on '
|| todays_date;
base_sal := 35525;
base_comm_rate := 1.33333;
base_annual := ROUND(base_sal * base_comm_rate, 2);
DBMS_OUTPUT.PUT_LINE(rpt_title);
DBMS_OUTPUT.PUT_LINE('Base Annual Salary: ' || base_annual);
END;