DECLARE
TYPE dept_rec IS RECORD(
deptno NUMBER(2),
dname VARCHAR2(14),
loc VARCHAR2(13)
);
TYPE emp_rec IS RECORD(
v_empno NUMBER,
v_ename VARCHAR2(20),
v_job VARCHAR2(9),
v_mgr NUMBER(4),
v_hiredate DATE,
v_sal NUMBER(7,2),
v_comm NUMBER(7,2),
v_dept_rec dept_rec
);
BEGIN
SELECT *
INTO dept_info
FROM dept
WHERE deptno = (SELECT deptno
FROM emp
WHERE empno = 7369
);
emp_info.v_dept_rec : = dept_info;--将部门信息记录赋给嵌套的部门记录
SELECT empno,ename,job,mgr,hiredate,sal,comm
INTO emp_info.v_empno,emp_info.v_ename,emp_info.v_job,emp_info.v_mgr,emp_info.v_hiredate,emp_info.v_sal,emp_info.v_comm
FROM emp
WHERE empno = 7369;
--输出嵌套记录的员工所在部门信息
DBMS_OUTPUT.PUT_LINE()
END;
TYPE dept_rec IS RECORD(
deptno NUMBER(2),
dname VARCHAR2(14),
loc VARCHAR2(13)
);
TYPE emp_rec IS RECORD(
v_empno NUMBER,
v_ename VARCHAR2(20),
v_job VARCHAR2(9),
v_mgr NUMBER(4),
v_hiredate DATE,
v_sal NUMBER(7,2),
v_comm NUMBER(7,2),
v_dept_rec dept_rec
);
BEGIN
SELECT *
INTO dept_info
FROM dept
WHERE deptno = (SELECT deptno
FROM emp
WHERE empno = 7369
);
emp_info.v_dept_rec : = dept_info;--将部门信息记录赋给嵌套的部门记录
SELECT empno,ename,job,mgr,hiredate,sal,comm
INTO emp_info.v_empno,emp_info.v_ename,emp_info.v_job,emp_info.v_mgr,emp_info.v_hiredate,emp_info.v_sal,emp_info.v_comm
FROM emp
WHERE empno = 7369;
--输出嵌套记录的员工所在部门信息
DBMS_OUTPUT.PUT_LINE()
END;