你说的SQL是什么地方?PLSQL Developer、SQL Plus

解决方案 »

  1.   

    从你的前文来看,你的函数写的不是很完整,只是把主要部分写出来了。可能是有意这样写的。看你的下文语法,应该没有什么问题。但是有一点,你的变量db没有赋初值,可能有问题。我仿照你的格式写了一个例子,没有测试的,你试试看:)create or replace function  hzwm_test
    (
       ptllx  STRING,   --输入参数不需要写in,输出参数或输入输出参数要写(in,in out)
       ptlid  STRING
    )return numberas 
    db numberbegin
     db := 0   --此处变量初始化,也就是赋初值。--下面写你的主要部分。
      select count(*) 
      into db 
      from t_ptl_point where lx=ptllx and id=ptlid;  return(db);
    end hzwm_test;
      

  2.   

    写法没有错误,oracle默认是不检查异常中断的。
    修改sqlnet.ora文件
       增加sqlnet.expire_time = 5 (这里也是分钟,可以自己设定)
       表示服务器每5分钟就会检查一下连接状况(发送一个数据包),如果发现该客户端不存在或连接不上,则会中断该连接
      

  3.   

    (ptllx IN varchar2,ptlid IN varchar2)
      RETURN NUMBER
    IS
    db NUMBER;
    BEGIN 
      select count(*) into db from t_ptl_point where lx=ptllx and id=ptlid;
    RETURN db;
    END;