oracle版本是8.0.5,想在存储过程中创建表用完之后在删除,代码如下CREATE OR REPLACE PACKAGE PKG_rptAmountOverdueComp
AS
type rc_result is ref cursor;
PROCEDURE SP_GetResult(ResultCursor out rc_result);
END PKG_rptAmountOverdueComp;create or replace package body PKG_rptAmountOverdueComp
as
PROCEDURE SP_GetResult(ResultCursor out rc_result)
is
v_num number;
begin
select count(*) into v_num from user_tables where table_name='rptAmountOverdueComp';
if v_num then
drop table rptAmountOverdueComp
end if;
CREATE TABLE rptAmountOverdueComp
(
FunctionID varchar2(20),
FunctionName varchar2(100),
FunctionType varchar2(50),
FunctionGroup varchar2(50),
FunctionTitle varchar2(100),
SQLText varchar2(500),
ReportFileName varchar2(100),
OrderBy varchar2(200),
IsVisible varchar2(1)
); --select * into rptAmountOverdueComp from MainFunctions;
open ResultCursor for
select * from rptAmountOverdueComp;
end;
end PKG_rptAmountOverdueComp;执行后报“无法在调用之前找到程序单元”,
AS
type rc_result is ref cursor;
PROCEDURE SP_GetResult(ResultCursor out rc_result);
END PKG_rptAmountOverdueComp;create or replace package body PKG_rptAmountOverdueComp
as
PROCEDURE SP_GetResult(ResultCursor out rc_result)
is
v_num number;
begin
select count(*) into v_num from user_tables where table_name='rptAmountOverdueComp';
if v_num then
drop table rptAmountOverdueComp
end if;
CREATE TABLE rptAmountOverdueComp
(
FunctionID varchar2(20),
FunctionName varchar2(100),
FunctionType varchar2(50),
FunctionGroup varchar2(50),
FunctionTitle varchar2(100),
SQLText varchar2(500),
ReportFileName varchar2(100),
OrderBy varchar2(200),
IsVisible varchar2(1)
); --select * into rptAmountOverdueComp from MainFunctions;
open ResultCursor for
select * from rptAmountOverdueComp;
end;
end PKG_rptAmountOverdueComp;执行后报“无法在调用之前找到程序单元”,
解决方案 »
- oracle建数据库abort,求助
- plsql 8.0如何在windows server 2008下连64bit 的Oracle 11g client
- 如何获取远程数据库SYSDBA默认用户的密码
- plsql链接数据库经常卡死?请高手分析下
- 关于数据库移植的问题??
- ORACLE 字符串替换. .. . . .
- 能否按照DECODE条件来COUNT???
- 数据库高级研发群1269427 欢迎交流讨论。
- 急-----------使用BCB连接ORACLE的问题!
- java.sql.SQLException: ORA-00923: 未找到要求的 FROM 关键字
- 一个查询问题
- 求教高手,关于ORACLE的隔离级别和加锁问题!
v_sqlstring:=' CREATE TABLE rptAmountOverdueComp
(
FunctionID varchar2(20),
FunctionName varchar2(100),
FunctionType varchar2(50),
FunctionGroup varchar2(50),
FunctionTitle varchar2(100),
SQLText varchar2(500),
ReportFileName varchar2(100),
OrderBy varchar2(200),
IsVisible varchar2(1)
)';
execute immediate v_sqlstring;
v_sqlstring varchar2(1024);
2 ssql VARCHAR2(1000);
3 begin
4 ssql :='create table TESTTAB
5 (
6 VALUE VARCHAR2(20)
7 )';
8 EXECUTE IMMEDIATE ssql;
9 ssql :='drop table testtab';
10 EXECUTE IMMEDIATE ssql;
11
12 end p_test;
13 /Procedure createdSQL> execute p_test;PL/SQL procedure successfully completed