
ora-00923: 未找到要求的 from 关键字在myeclipse环境下 问题是这个我在oracle下写的分页的过程现在调用 5
CREATEORREPLACEPROCEDUREFENYE(TABLENAMEINVARCHAR2,PAGESIZEINNUMBER,PAGENOWINNUMBER,MY...
CREATE OR REPLACE PROCEDURE FENYE(
TABLENAME IN VARCHAR2,
PAGESIZE IN NUMBER,
PAGENOW IN NUMBER,
MYROWS OUT NUMBER, --总记录数
PAGECOUNTS OUT NUMBER, --总页数
P_CURSOR OUT TEST_PACKAGE.TEST_CURSOR --返回记录集
) IS
--定义部分
--定义SQL语句字符串
V_SQL VARCHAR2(1000);
V_BEGIN NUMBER := (PAGENOW - 1) * PAGESIZE + 1;
V_END NUMBER := PAGENOW * PAGESIZE;
BEGIN
--执行部分
V_SQL := 'select * from (select a.*,rownum rn from (select * from ' || TABLENAME || ')a where rownum<=' || V_END || ') where rn>=' || V_BEGIN || '';
--把游标与sql语句关联起来
OPEN P_CURSOR FOR V_SQL;
--要计算myrows与mypagecount
V_SQL := 'select count(*) from' || TABLENAME || '';
--执行sql语句需要用execute immediate来执行,并且把得到的结果给myrows
EXECUTE IMMEDIATE V_SQL INTO MYROWS;
--判断显示的页数
IF MOD(MYROWS, PAGESIZE) = 0 THEN
PAGECOUNTS := MYROWS/PAGESIZE;
ELSE
PAGECOUNTS := MYROWS/PAGESIZE + 1;
END IF;
--关闭游标
CLOSE P_CURSOR;
END; 展开
TABLENAME IN VARCHAR2,
PAGESIZE IN NUMBER,
PAGENOW IN NUMBER,
MYROWS OUT NUMBER, --总记录数
PAGECOUNTS OUT NUMBER, --总页数
P_CURSOR OUT TEST_PACKAGE.TEST_CURSOR --返回记录集
) IS
--定义部分
--定义SQL语句字符串
V_SQL VARCHAR2(1000);
V_BEGIN NUMBER := (PAGENOW - 1) * PAGESIZE + 1;
V_END NUMBER := PAGENOW * PAGESIZE;
BEGIN
--执行部分
V_SQL := 'select * from (select a.*,rownum rn from (select * from ' || TABLENAME || ')a where rownum<=' || V_END || ') where rn>=' || V_BEGIN || '';
--把游标与sql语句关联起来
OPEN P_CURSOR FOR V_SQL;
--要计算myrows与mypagecount
V_SQL := 'select count(*) from' || TABLENAME || '';
--执行sql语句需要用execute immediate来执行,并且把得到的结果给myrows
EXECUTE IMMEDIATE V_SQL INTO MYROWS;
--判断显示的页数
IF MOD(MYROWS, PAGESIZE) = 0 THEN
PAGECOUNTS := MYROWS/PAGESIZE;
ELSE
PAGECOUNTS := MYROWS/PAGESIZE + 1;
END IF;
--关闭游标
CLOSE P_CURSOR;
END; 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏5(财富值+成长值)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询