CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Oracle >  开发

存储过程中执行字符串中的sql语句

楼主peiweiwei(无状态对象)2005-03-04 09:40:34 在 Oracle / 开发 提问

我希望在存储过程中自动生成sql语句,并且生成的sql语句执行后,可以在存储过程中回退此语句的执行结果。  
  sql   server中有个EXEC,不知道它的执行结果能不能在存储过程中回退,知道的朋友麻烦说一声,这里先偷个懒了。 问题点数:60、回复次数:6Top

1 楼lynx(lynx)回复于 2005-03-04 09:46:57 得分 12

就是动态SQL,参考:http://soft.yesky.com/SoftChannel/72342371928965120/20041022/1867273.shtml  
   
  其中,execute   immediate   'select   name,salary   from   emp   where   id=:1'   就是执行动态SQL的语句。  
  Top

2 楼bzszp(SongZip)回复于 2005-03-04 10:09:38 得分 12

SQL>   set   serveroutput   on  
  SQL>   declare  
      2     v_out   number;  
      3     begin  
      4     execute   immediate   'select   1   from   dual   '   into   v_out;  
      5     dbms_output.put_line(v_out);  
      6     end;  
      7     /  
  1  
   
  PL/SQL   过程已成功完成。  
   
  SQL>Top

3 楼zhaokeke2004(男人·海洋)回复于 2005-03-04 10:13:25 得分 12

用execute   immediate,你的数据库版本必须>=oracle   8i  
  DDL语句应该不能回退巴.Top

4 楼zhaokeke2004(男人·海洋)回复于 2005-03-04 10:14:27 得分 12

不好意思,上面写的是如果execute   immediate后面写的是DDL语句的话Top

5 楼bzszp(SongZip)回复于 2005-03-04 10:28:25 得分 12

805以下的不可以,需要通过dbms_sql来实现。  
  815以上的就可以Top

6 楼tansoul(我也不懂)回复于 2005-04-15 11:24:39 得分 0

学到一招,谢谢^_^Top

相关问题

  • 如何在将sql语句作为存储过程的字符串参数
  • 求一存储过程或Sql 语句:能替换某字符串字段里的某写字符
  • 在存储过程中使用字符串参数代替部分sql语句实现动态参数
  • 求一字符串匹配以及修改的sql语句或者存储过程(急,进者有分)
  • 存储过程中如何执行一个字符串语句
  • 存储过程中的查询语句可否是字符串?
  • 存储过程里面构造sql字符串的问题!!!
  • 存储过程中,执行sql字符串的问题
  • 存储过程中怎么执行字符串拼接的sql
  • 关于在SQL SERVER的存储过程里执行含SQL语句的字符串,一经验证,立马给分

关键词

  • 语句
  • 存储过程
  • 执行
  • sql
  • 回退
  • execute immediate

得分解答快速导航

  • 帖主:peiweiwei
  • lynx
  • bzszp
  • zhaokeke2004
  • zhaokeke2004
  • bzszp

相关链接

  • Oracle类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo