| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1347 人关注过本帖
标题:如何判断 sp_addextendedproc 过程是否存在 然后恢复
只看楼主 加入收藏
wifayy
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2010-7-23
结帖率:50%
收藏
已结贴  问题点数:10 回复次数:6 
如何判断 sp_addextendedproc 过程是否存在 然后恢复
if exists(select 1 from sysobjects where id=object_id('dbo.sp_addextendedproc') and xtype='P')   
create procedure sp_addextendedproc @functname nvarchar(517),@dllname varchar(255) as set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addextendedproc') return (1) end dbcc addextendedproc( @functname, @dllname) return (0)
else   
print '不存在'

貌似create 语句不允许出现在第2句

不知道该怎么写
搜索更多相关主题的帖子: 判断 
2010-09-05 17:45
wrqggc
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:19
专家分:23
注 册:2010-9-2
收藏
得分:3 
不太懂~~呵呵 顶一下 顺便学习下
2010-09-05 21:19
gameohyes
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:53
帖 子:1275
专家分:3629
注 册:2009-3-5
收藏
得分:3 
回复 楼主 wifayy
create前一句
加个go

C#超级群 74862681,欢迎大家的到来!
2010-09-05 21:56
qingshuiliu
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:17
帖 子:323
专家分:1538
注 册:2009-12-28
收藏
得分:3 
"create procedure sp_addextendedproc @functname nvarchar(517),@dllname varchar(255) as set implicit_transactions off
if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addextendedproc') return (1) end
dbcc addextendedproc( @functname, @dllname)"
这样的代码就可以恢复存储过程吗?就我所知
dbcc只能做一些检查,信息采集和验证的功能。
2010-09-06 14:09
wifayy
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2010-7-23
收藏
得分:0 
"create procedure sp_addextendedproc @functname nvarchar(517),@dllname varchar(255) as set implicit_transactions off
if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addextendedproc') return (1) end
dbcc addextendedproc( @functname, @dllname)"

确实可以恢复的 相比较原来的过程缩短了很多呵呵
2010-09-06 15:45
wifayy
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2010-7-23
收藏
得分:0 
if   exists(select   1   from   sysobjects   where   id=object_id( 'dbo.sp_addextendedproc')   and   xtype= 'P ')

go

create procedure sp_addextendedproc @functname nvarchar(517),@dllname varchar(255) as set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addextendedproc') return (1) end dbcc addextendedproc( @functname, @dllname) return (0)
else   
print '不存在'



提示
服务器: 消息 170,级别 15,状态 1,行 1
第 1 行: ')' 附近有语法错误。
服务器: 消息 156,级别 15,状态 1,过程 sp_addextendedproc,行 3
在关键字 'else' 附近有语法错误。
2010-09-06 15:50
qingshuiliu
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:17
帖 子:323
专家分:1538
注 册:2009-12-28
收藏
得分:0 
是不是else后面要:
else
begin
print '不存在'
end
dbcc addextendedproc( @functname, @dllname) return (0)
2010-09-07 09:18
快速回复:如何判断 sp_addextendedproc 过程是否存在 然后恢复
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014437 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved