zoukankan      html  css  js  c++  java
  • Oracle/PLSQL: Creating Functions

    In Oracle, you can create your own functions.
    译:在ORACLE中,你可以创建你自己的方法。
    The syntax for a function is:
    CREATE [OR REPLACE] FUNCTION function_name
        [ (parameter [,parameter]) ]
        RETURN return_datatype
    IS | AS
        [declaration_section]
    BEGIN
        executable_section
    [EXCEPTION
        exception_section]
    END [function_name];
     
    When you create a procedure or function, you may define parameters. There are three types of parameters that can be declared:
    1.IN - The parameter can be referenced by the procedure or function. The value of the parameter can not be overwritten by the procedure or function.
    2.OUT - The parameter can not be referenced by the procedure or function, but the value of the parameter can be overwritten by the procedure or function.
    3.IN OUT - The parameter can be referenced by the procedure or function and the value of the parameter can be overwritten by the procedure or function.
    译:在你创建一个过程或者是方法时,可能会定义参数。这里有三种类型的参数可被定义:
    1IN -该参数可以被过程或者是方法引用。但该参数的值不可以被过程或者是方法重写。
    2、 OUT -该参数不可以被过程或者是方法引用。但该参数的值可以被过程或者是方法重写。
    3、 IN OUT -该参数既可以被过程或者是方法引用。该参数的值也可以被过程或者是方法重写。
    The following is a simple example of a function:
    CREATE OR REPLACE Function FindCourse
       ( name_in IN varchar2 )
       RETURN number
    IS
        cnumber number;
        cursor c1 is
        select course_number
          from courses_tbl
          where course_name = name_in;

    BEGIN
    open c1;
    fetch c1 into cnumber;

    if c1%notfound then
         cnumber := 9999;
    end if;

    close c1;
    RETURN cnumber;
    EXCEPTION
    WHEN OTHERS THEN
          raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM);
    END;
    This function is called FindCourse. It has one parameter called name_in and it returns a number. The function will return the course number if it finds a match based on course name. Otherwise, it returns a 99999.
    译:方法名为FindCourse,它有一个名为name_in的参数并且结果返回一个数字。如果它找到一个与课程名相同,那么就返回该课程号,否则就返回99999
    You could then reference your new function in an SQL statement as follows:
    译:你可以在SQL语句这样引用你的新方法:
    select course_name, FindCourse(course_name) as course_id
    from courses
    where subject = 'Mathematics';
  • 相关阅读:
    windows系统pycharm终端更改为git bash
    python 连接mysql数据库操作
    selenium 鼠标,键盘操作
    selenium定位,操作元素
    python读取csv,Excel,Txt,Yaml 文件
    Jmeter 学习 搭建(1)
    接口测试
    UnitTest+HTMLTestRunner实战
    HTMLTestRunner.py 文件,已修改完成
    UnitTest + HTMLTestRunner
  • 原文地址:https://www.cnblogs.com/reynold-lei/p/3572779.html
Copyright © 2011-2022 走看看