数组RECORD使用

record 类型的变量只能保存从数据库中查询出的一行记录,如果查询出了多行记录,就会出现错误。

-- record类型变量直接赋值
DECLARE
    TYPE type_record_user IS RECORD(
        user_id   NUMBER(10),
        user_name VARCHAR2(20));
    record_user type_record_user;
BEGIN
    record_user.user_id   := 11;
    record_user.user_name := 'aaa';
    dbms_output.put_line('userid:' || record_user.user_id);
    dbms_output.put_line('username:' || record_user.user_name);
END;

-- record类型变量读表赋值
DECLARE
    TYPE type_record_emp IS RECORD(
        emp_no   emp.empno%TYPE,
        emp_name emp.ename%TYPE);
    record_emp type_record_emp;
BEGIN
    SELECT empno,
           ename
    INTO record_emp
    FROM emp
    WHERE empno = &emp_no; -- 7369
    dbms_output.put_line('顾客编号:' || record_emp.emp_no);
    dbms_output.put_line('顾客名称:' || record_emp.emp_name);
END;

猜你喜欢

转载自mandy-rxr.iteye.com/blog/2250326