在1个VARIABLE – ORACLE STORED PROCEDURE中获取多行和存储

前端之家收集整理的这篇文章主要介绍了在1个VARIABLE – ORACLE STORED PROCEDURE中获取多行和存储前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在研究ORACLE STORED PROCEDURES,我有一个疑问.
我有一个查询,它获取超过1行,我想将所有这3行的值存储在1变量中.
任何人都可以帮助我.

我的QUERY是这样的:

选择STUDENT_NAME
来自STUDENT.STUDENT_DETAILS
WHERE CLASS_ID =’C’;

这个查询获取3个名称

Jack,
Jill,
Bunny

我希望所有这3个名字都存储在1个变量中,即C_NAMES.
之后我在我的程序的后续步骤中使用该变量.

任何人都可以帮我这个.

我非常感谢您的时间和精力.

提前致谢,

温达:)

CREATE PROCEDURE a_proc
AS
    CURSOR names_cur IS
        SELECT  student_name
        FROM    student.student_details
        WHERE   class_id = 'C';

    names_t  names_cur%ROWTYPE;
    TYPE names_ntt IS TABLE OF names_t%TYPE; -- must use type
    l_names  names_ntt;
BEGIN
    OPEN  names_cur;
    FETCH names_cur BULK COLLECT INTO l_names;
    CLOSE names_cur;

    FOR indx IN 1..l_names.COUNT LOOP
        DBMS_OUTPUT.PUT_LINE(l_names(indx).student_name);
    END LOOP;
END a_proc;

猜你在找的Oracle相关文章