create or replace procedure fx_gettext(    nrid int,
                                            names  out string,
                                            nrr  out blob,/*合同内容 varchar2*/
                                           ri_Error  out int
                                           ) is
begin
select nr into nrr   from fx_zt where id = nrid;
select name into names   from fx_zt where id = nrid;这样才能过
create or replace procedure fx_gettext(    nrid int,
                                            names  out string,
                                            nrr  out blob,/*合同内容 varchar2*/
                                           ri_Error  out int
                                           ) is
begin
select nr into nrr,name into names   from fx_zt where id = nrid;
这样的话提示 缺少关键字 FROM

解决方案 »

  1.   

    --语法格式是这样的
    select nr,name into nrr, names from fx_zt where id = nrid;
      

  2.   

    不太熟悉的话还是按标准格式来做吧...下面这个你试试肯定行.CREATE OR REPLACE PROCEDURE PRO_FX_GETTEXT(NRID     IN INT,
                                           NAMES    OUT STRING,
                                           NRR      OUT BLOB, /*???????? VARCHAR2*/
                                           RI_ERROR OUT INT) IS
                                          -- OUT_NAME VARCHAR2(10);
    BEGIN
      SELECT NR INTO NRR FROM FX_ZT WHERE ID = NRID;
      SELECT NAME INTO NAMES FROM FX_ZT WHERE ID = NRID;
     -- NAMES:=OUT_NAME;
      EXCEPTION 
        WHEN OTHERS THEN
          DBMS_OUTPUT.PUT_LINE('ERRCODE: '||SQLCODE||'ERRMSG: '||SQLERRM) ;
    END;