Oracle(和
PostgreSQL)有:
>%TYPE
>%ROWTYPE
%类型
%TYPE用于声明与现有表中的列的数据类型相关的变量:
DECLARE v_id ORDERS.ORDER_ID%TYPE
这里的好处是,如果数据类型改变,则可变数据类型保持同步。
%ROWTYPE
DECLARE
CURSOR c1 IS
SELECT last_name, salary, hire_date, job_id
FROM employees
WHERE employee_id = 120;
-- declare record variable that represents a row fetched from the employees table
employee_rec c1%ROWTYPE;
BEGIN
-- open the explicit cursor and use it to fetch data into employee_rec
OPEN c1;
FETCH c1 INTO employee_rec;
DBMS_OUTPUT.PUT_LINE('Employee name: ' || employee_rec.last_name);
END;
/