创建oracle存储过程,执行语句为select*from test
时间: 2024-10-09 07:14:47 浏览: 27
创建Oracle存储过程是为了封装一段可重复使用的SQL查询逻辑,以便于管理和效率提升。以下是创建一个名为`get_test_data`的存储过程,该过程会执行`SELECT * FROM test`的语句:
```sql
CREATE OR REPLACE PROCEDURE get_test_data (
p_result OUT SYS_REFCURSOR
)
AS
BEGIN
OPEN p_result FOR SELECT * FROM test;
END get_test_data;
-- 调用存储过程示例
DECLARE
cursor_result SYS_REFCURSOR;
BEGIN
EXECUTE IMMEDIATE 'CALL get_test_data(:1)', INOUT cursor_result;
LOOP
FETCH cursor_result INTO ...; -- 这里填写你需要获取的字段
EXIT WHEN cursor_result%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(...); -- 打印结果
END LOOP;
CLOSE cursor_result;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
RAISE;
END;
```
在这个例子中,我们首先声明了一个输出类型的游标变量`p_result`,然后在`BEGIN`块中设置了SQL语句并打开游标。调用者可以通过传递游标参数来接收查询结果,并在循环中处理每一行数据。