oracle 函数 详细demo
时间: 2023-08-02 21:12:09 浏览: 53
以下是一个简单的Oracle函数的详细示例:
```
CREATE OR REPLACE FUNCTION get_employee_name (emp_id IN NUMBER)
RETURN VARCHAR2
IS
emp_name VARCHAR2(50);
BEGIN
SELECT name INTO emp_name FROM employees WHERE employee_id = emp_id;
RETURN emp_name;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RETURN 'Employee Not Found';
END;
```
这个函数的作用是根据员工ID返回员工的姓名。它接受一个整数类型的emp_id参数,并返回一个字符串类型的emp_name。如果找不到指定的员工,函数会返回一个特定的字符串。
在函数体中,我们使用SELECT语句查询employees表并将结果存储在emp_name变量中。如果SELECT语句未找到任何行,则函数会抛出一个NO_DATA_FOUND异常。我们使用EXCEPTION子句来处理这种情况,并返回一个特定的字符串。
在声明函数时,我们使用了RETURN关键字指定函数的返回类型。我们还在函数名称后面的括号中定义了函数的参数列表。在此示例中,我们只有一个参数emp_id,它是一个整数类型。
注意,我们使用了CREATE OR REPLACE关键字。这意味着如果函数已经存在,则它将被替换。这使得我们可以轻松地更新函数的定义而不必先删除它。
要调用此函数,请使用SELECT语句并传递一个整数参数emp_id,如下所示:
```
SELECT get_employee_name(100) FROM dual;
```
这将返回员工ID为100的员工姓名。