-- ROCORD
DECLARE
TYPE emp_record is record(
v_ename emp.ename%type,
v_sal emp.sal%type,
v_deptno emp.deptno%type
);
v_empno emp.empno%type:=7788;
v_FENGZHUANG emp_record;
BEGIN
select ename,sal,deptno into v_FENGZHUANG
from EMP
where empno=v_empno;
DBMS_OUTPUT.PUT_LINE('员工姓名:'||v_FENGZHUANG.ename||',员工工资:'||v_FENGZHUANG.sal||',员工部门编号:'||v_FENGZHUANG.deptno);-- 输出变量V_ename的值
END;
当我运行的时候一直在显示必须声明'ENAME'组件 麻烦帮忙看一下
你的v_FENGZHUANG取得是emp_record记录类型,emp_record定义的列名称没有声明ENAME,你生命的是v_ename,你把 '员工姓名:'||v_FENGZHUANG.ename 中的ename 改成v_ename就行了,后面的一样,列名称不是用你要查的table列的名称,用你定义的记录中定义的列名称。
嗯嗯,刚才我运行了一下,好了,谢谢呀
嗯嗯,刚才运行了一下,好了,谢谢大神😂