查找sql​​ server 2000中的所有存储过程和作业

发布于 2024-09-01 00:36:08 字数 263 浏览 4 评论 0原文

在 SQL SERVER 2005 中此查询工作正常:Select * from sys.procedures where object_definition(object_id) like '%J%' SELECT * FROM MSDB.DBO.SYSJOBS WHERE NAME LIKE '%J%'

但在 sql server 2000 中它不起作用。在这里我需要找到与我的字符串匹配的所有存储过程和作业?如何在sql server 2000中查找?

问候, 库马尔

In SQL SERVER 2005 This query works fine : Select * from sys.procedures where object_definition(object_id) like '%J%'
SELECT * FROM MSDB.DBO.SYSJOBS WHERE NAME LIKE '%J%'

but in sql server 2000 it is not working. Here i need to find the all the stored procedures and jobs which matches my string ? how to find in sql server 2000 ?

regards,
kumar

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

小姐丶请自重 2024-09-08 00:36:09

SQL 2000 缺少 sys.procedures 系统表 - 您会发现最接近的是 sysobjects,您可以选择 WHERE name=? AND XTYPE='P'

要获取 SQL 代理作业,您可以执行以下操作:

SELECT job_id, [name] FROM msdb.dbo.sysjobs WHERE NAME=?;

SQL 2000 lacks the sys.procedures system table - the closest you'll find is sysobjects, and you could do your select WHERE name=? AND XTYPE='P'.

To get SQL agent jobs, you can do this:

SELECT job_id, [name] FROM msdb.dbo.sysjobs WHERE NAME=?;
指尖上得阳光 2024-09-08 00:36:09

syscomments 包含过程定义的文本(在其 text 和 ctext 列中)。

但是,您应该意识到大型过程可以跨越多行,因此如果您在 LIKE 条件中搜索的内容很大,您可能会不幸,它会跨行边界分割。由于 SQL Server 2000 没有 varchar(max),因此没有简单的解决方法。

syscomments contains the text of procedure definitions (in both it's text and ctext columns).

However, you should be aware that large procedures can span multiple rows, so if what you're searching for in your LIKE condition is large, you may be unlucky and it will be split across a row boundary. There's no easy fix for this, since SQL Server 2000 doesn't have varchar(max).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文