做不到说明智力有问题!!有本事看题!!
oracle 10g数据库里面有一张表。create table dept(
deptno number(2,0),
dname varchar2(14 byte),
loc varchar2(13 byte),
constraint "pk_dept" primary key(deptno)
);insert into dept values(1,'ACCOUNTING','true');
insert into dept values(2,'classname','true');
insert into dept values(3,'age','true');
insert into dept values(4,'sex','true');
commit;用sql语句写一个存储过程,返回记录集。
在sqlplus 上运行。
oracle 10g数据库里面有一张表。create table dept(
deptno number(2,0),
dname varchar2(14 byte),
loc varchar2(13 byte),
constraint "pk_dept" primary key(deptno)
);insert into dept values(1,'ACCOUNTING','true');
insert into dept values(2,'classname','true');
insert into dept values(3,'age','true');
insert into dept values(4,'sex','true');
commit;用sql语句写一个存储过程,返回记录集。
在sqlplus 上运行。
解决方案 »
- Oracle Hint的用法!详细
- 关于数据库查询的问题,懂的帮忙啊,解释谢谢啊
- oci OCIDefineArrayOfStruct()如何绑定动态结构体实现批量查询
- ORA-01219:数据库未打开:仅允许在固定表/视图中查询
- Oracle游标学习资料
- 新手关于存储过程和01036错误的问题
- 用过优化大师以后,ORACLE提示“ORA-12500:监听程序无法启动专用服务器进程”(救人有分)
- 各位,多指教!!2000 pro 上怎么就装不上个oracle 9i
- PL/SQL显示字段信息不完全
- Oracle secure backup
- 请教一个关于sql左连接的效率问题
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
已写入 file afiedt.buf 1 create or replace function get_dept return dept_t_type pipelined as v dept_type;
2 begin
3 for row_dept in (select deptno,dname,loc from dept) loop
4 v := dept_type(row_dept.deptno,row_dept.dname,row_dept.loc);
5 pipe row(v);
6 end loop;
7 return;
8* end;
SQL> /函数已创建。SQL> select * from get_dept;
select * from get_dept
*
第 1 行出现错误:
ORA-04044: 此处不允许过程, 函数, 程序包或类型
SQL> select * from table(get_dept); DEPTNO DNAME LOC
---------- -------------- -------------
1 ACCOUNTING true
2 classname true
3 age true
4 sex true用函数可以吗
CREATE OR REPLACE PACKAGE PACK_TEST
AS
--这个是游标
TYPE TESTCUR IS REF CURSOR;
--这个是过程
PROCEDURE sp_test1(P_CUR OUT TESTCUR);
END PACK_TEST;
--声明包体
CREATE OR REPLACE PACKAGE BODY PACK_TEST
AS
PROCEDURE sp_test1(P_CUR OUT TESTCUR) is
strsql varchar2(1000);
begin
strsql:='select * from test_table ;
open p_cur for strsql ;
end sp_test1;
end PACK_TEST;