如何在sysobjects系统表中判断或找出所有用户存储过程

wf2091139 2006-11-07 11:04:46
如何在sysobjects系统表中判断或找出所有用户存储过程
或有什么办法可以判断哪个存储过程是用户定义的,那些是系统自己的?
...全文
269 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
wf2091139 2006-11-07
  • 打赏
  • 举报
回复
我靠,晕死 什么叫 “贴子回复次数大于跟给分次数”?
稍后一下再结吧
being21 2006-11-07
  • 打赏
  • 举报
回复
同意!!!
wf2091139 2006-11-07
  • 打赏
  • 举报
回复
就用这个咯,结贴咯
早起晚睡 2006-11-07
  • 打赏
  • 举报
回复
我的应该是可以的只要不是系统的status>0所以应该没问题了
wf2091139 2006-11-07
  • 打赏
  • 举报
回复
select * from dbo.sysobjects where xtype='p' and status>0

好像可以
chenjunjarysky 2006-11-07
  • 打赏
  • 举报
回复
select name as 存储过程名 from sysobjects
where xtype='P' and status>0

好象系统的存储过程的status值都小于0的。
being21 2006-11-07
  • 打赏
  • 举报
回复
select * from sysobjects
where xtype = 'P' and left(name,3)<>'dt_'

呵呵,似乎都是这个开头的,你的也是么???
wf2091139 2006-11-07
  • 打赏
  • 举报
回复
可是我的存储过程都是sa建的,uid 都是 1
所以上面2位仁兄的查询结果都是 空。
哎,郁闷了
早起晚睡 2006-11-07
  • 打赏
  • 举报
回复
select * from dbo.sysobjects where xtype='p' and status>0看看这个呢
being21 2006-11-07
  • 打赏
  • 举报
回复
如果不好用,你把系统存储过程名字记录下来,呵呵,not in???
似乎没有效率!!!
水平有限,到此了.
marco08 2006-11-07
  • 打赏
  • 举报
回复
xtype char(2) 对象类型。可以是下列对象类型中的一种:
C = CHECK 约束
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
L = 日志
FN = 标量函数
IF = 内嵌表函数
P = 存储过程
PK = PRIMARY KEY 约束(类型是 K)
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
UQ = UNIQUE 约束(类型是 K)
V = 视图
X = 扩展存储过程



--------------
type char(2) 对象类型。可以是下列值之一:
C = CHECK 约束
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
FN = 标量函数
IF = 内嵌表函数
K = PRIMARY KEY 或 UNIQUE 约束
L = 日志
P = 存储过程
R = 规则
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
V = 视图
X = 扩展存储过程
being21 2006-11-07
  • 打赏
  • 举报
回复
select * from sysobjects
where xtype = 'P' and uid <> 1
如果你的用户存储过程不是用sa 建立的话,这个才好用.呵呵!!!
xtype = 'P' 存储过程

---HELP
xtype char(2) 对象类型。可以是下列对象类型中的一种:
C = CHECK 约束
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
L = 日志
FN = 标量函数
IF = 内嵌表函数
P = 存储过程
PK = PRIMARY KEY 约束(类型是 K)
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
UQ = UNIQUE 约束(类型是 K)
V = 视图
X = 扩展存储过程


uid smallint 所有者对象的用户 ID。
chenjunjarysky 2006-11-07
  • 打赏
  • 举报
回复
select name as 存储过程名,xtype as 存储过程类型 from sysobjects
where xtype='P' and type='U'
wf2091139 2006-11-07
  • 打赏
  • 举报
回复
select * from dbo.sysobjects where type='u' and xtype='p'

这个肯定不可以, type = u 是用户数据表
wf2091139 2006-11-07
  • 打赏
  • 举报
回复
不明白
有什么标示么?
(比如系统表和用户表,在sysobjects中是 xtype = u 的 ,而系统表就是 xtype=s)
早起晚睡 2006-11-07
  • 打赏
  • 举报
回复
select * from dbo.sysobjects where type='u' and xtype='p'
看看这个行不
robin_yao 2006-11-07
  • 打赏
  • 举报
回复
mark
早起晚睡 2006-11-07
  • 打赏
  • 举报
回复
找哪一个可以 所有应该也可以啊

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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