ORACLE 自定义函数的语法
时间: 2023-09-07 08:14:25 浏览: 127
Oracle自定义函数
ORACLE 自定义函数的语法如下:
```
CREATE [OR REPLACE] FUNCTION function_name
[(parameter_name [IN | OUT | IN OUT] parameter_type [, ...])]
RETURN return_type
{IS | AS}
[declaration_statements]
BEGIN
executable_statements
[EXCEPTION
exception_handler_statements]
END [function_name];
```
其中,`function_name` 为自定义函数的名称;`parameter_name` 为参数的名称;`parameter_type` 为参数的数据类型;`return_type` 为函数返回值的数据类型;`declaration_statements` 为声明语句;`executable_statements` 为可执行语句;`exception_handler_statements` 为异常处理语句。
例如,以下是一个简单的 ORACLE 自定义函数的示例:
```
CREATE FUNCTION get_salary (emp_id IN NUMBER) RETURN NUMBER IS
salary NUMBER;
BEGIN
SELECT salary INTO salary FROM employees WHERE employee_id = emp_id;
RETURN salary;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RETURN 0;
END get_salary;
```
该函数名为 `get_salary`,接收一个名为 `emp_id` 的参数,返回值为 `NUMBER` 类型。在函数体中,首先通过查询语句获取员工薪资,然后将其赋值给 `salary` 变量,并最终返回该变量的值。当查询未返回任何数据时,通过异常处理语句返回默认值 0。
阅读全文