怎么用PL/SQL创建一个存储过程,从一张表中查询一条数据,有该数据就输出该行结果,没有数据就输出未找到符合条件的结果

解决方案 »

  1.   


    --在包中定义
    type   c_Type   is   ref   cursor; 
    -----------------------------------------------------------------
    CREATE OR REPLACE PROCEDURE CHECK_VALUE(V_ARGUMENT IN VARCHAR2,
                                            V_TYPT     OUT pkg_com.c_Type,
                                            v_err      OUT VARCHAR2) IS
    v_result VARCHAR2(1);                                        
    BEGIN
     
      SELECT 1 INTO v_result FROM da_grjbxx WHERE grbh = V_ARGUMENT;  OPEN V_TYPT 
      FOR SELECT *  FROM da_grjbxx WHERE grbh = V_ARGUMENT;
      
      EXCEPTION
      WHEN OTHERS THEN
      
      v_err := V_ARGUMENT ||'无数据,或者数据结果多于一条';
      
    END CHECK_VALUE;