首页 新闻 赞助 找找看

ORACLE中RECORD 问题

0
悬赏园豆:10 [已解决问题] 解决于 2018-08-14 18:30

-- 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'组件   麻烦帮忙看一下

碎情拾海的主页 碎情拾海 | 菜鸟二级 | 园豆:205
提问于:2018-08-09 18:48
< >
分享
最佳答案
0

你的v_FENGZHUANG取得是emp_record记录类型,emp_record定义的列名称没有声明ENAME,你生命的是v_ename,你把  '员工姓名:'||v_FENGZHUANG.ename 中的ename 改成v_ename就行了,后面的一样,列名称不是用你要查的table列的名称,用你定义的记录中定义的列名称。

收获园豆:10
ckx0709 | 菜鸟二级 |园豆:414 | 2018-08-14 18:23

嗯嗯,刚才我运行了一下,好了,谢谢呀

碎情拾海 | 园豆:205 (菜鸟二级) | 2018-08-14 18:29
其他回答(1)
0

嗯嗯,刚才运行了一下,好了,谢谢大神😂

碎情拾海 | 园豆:205 (菜鸟二级) | 2018-08-14 18:27
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册