12
返回列表 发新帖
楼主: linyu27

[精华] 再问游标

[复制链接]
论坛徽章:
3
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34
11#
发表于 2002-9-2 17:57 | 只看该作者
我剛才說的那個拼接字符串的方法一般用在要刪除庫中所有的procedure或者所有的trigger的時候。
比方說:
declare @name varchar(4000)
set @name = ''
select @name = @name + ',' + name from sysobjects
set @name = 'drop proc ' + right(@name,len(@name)-1)
print @name
--exec (@name)  --這句話打開的時候,當前庫中的所有的procedure就都玩完了.嘿嘿


而Oracle的PL/SQL等效的處理為:
begin
        for r in (select 'drop procedure '||object_name as sqls from user_objects
        where object_type = 'PROCEDURE'))
        loop       
                execute immediate (r.sqls||chr(13));       
        end loop;
end;
/

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表