oracle中的select into语句的动态查询

bingxue2332 2007-04-22 11:26:11
具体的意思是这样的:
CREATE OR REPLACE FUNCTION testExecute RETURN NUMBER IS
tmpVar NUMBER;
sqltemp varchar2(200);

BEGIN
tmpVar := 0;

sqltemp := 'select count(*) into tmpVar from gg_book ';

--execute immediate sqltemp;

select count(*) into tmpVar from gg_book;


RETURN tmpVar;

END testExecute;

我使用--execute immediate sqltemp;就提示错误,请那位大哥给点提示,谢谢了!
...全文
1924 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lightbear 2009-02-06
  • 打赏
  • 举报
回复
up
bingxue2332 2007-04-25
  • 打赏
  • 举报
回复
to hongqi162(失踪的月亮)

think you!

i will have a try!
hongqi162 2007-04-24
  • 打赏
  • 举报
回复
sqltemp := 'select count(*) from gg_book ';

execute immediate sqltemp into tmpVar; --应该这样使用
bingxue2332 2007-04-24
  • 打赏
  • 举报
回复
skystar99047(天星)

我需要拼出 select count(*) into tmpVar from gg_book 这句话,然后可以执行,请问这该怎么写?



wufeng135 2007-04-23
  • 打赏
  • 举报
回复
都是高手阿,
APOLLO_TS 2007-04-22
  • 打赏
  • 举报
回复
execute immediate
用来执行单行操作。select into属于当行操作时可行的!
skystar99047 2007-04-22
  • 打赏
  • 举报
回复
execute immediate 主要用来执行DDL,函数中不能使用DDL。
查询时直接执行select into即可,不要用execute immediate。
bingxue2332 2007-04-22
  • 打赏
  • 举报
回复
up起来

20分没有人要?

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧