是否GetUnitRate已经被用过了CREATE  or replace function...

解决方案 »

  1.   

    CREATE OR REPLACE   FUNCTION  GetUnitRate  
      (TYPE  IN  VARCHAR2,GoodsNo  IN  VARCHAR2  ,  Unit  IN  VARCHAR2)      
    RETURN    FLOAT  
    begin
        ... 
    end GetUnitRate   ;
      

  2.   

    lz你错的地方实在是太多了
    CREATE OR REPLACE   FUNCTION  ff_ll02
      (TYPE  IN  VARCHAR2,GoodsNo  IN  VARCHAR2  ,  Unit  IN  VARCHAR2)      
    RETURN    FLOAT  
    AS  
    v_no INT;
    v_unitno INT;
    BEGIN               SELECT 1 INTO v_no FROM dual;
     SELECT 1 INTO v_unitno FROM dual;                                   
                 IF  v_NO=0  THEN
                       RETURN  0  ;
       END IF;
                 IF  v_unitno=0  THEN
                       RETURN  0  ;
       END IF;
                 IF  TYPE='1'  THEN  
                       RETURN  v_NO/v_unitno  ;
       END IF;
                       RETURN  v_unitno/v_NO  ;
    END  ;
      

  3.   

    如果v_no 和v_unitno都必须是指定长度的varchar2类型,该怎么弄?
      

  4.   

    v_no varchar2(20);
    v_unitno  varchar2(20);
      

  5.   

    我下班了
    v_no 和v_unitno 怎么会是字符串(看上面的语法怎么都不像是字符串类型)
      

  6.   

    我是从sql server 上转到oracle 下
    可以在:
    CREATE    FUNCTION  GetUnitRate  (Type  in  varchar2(1),GoodsNo  in  varchar2(20)  ,  Unit  in  varchar2(4)) 
    定义
      

  7.   

    出现编译错误的话,需要看看具体是什么错误,根据错误信息去发现问题。v_no varchar2(20);
    v_unitno  varchar2(20);