У меня есть 500 хранимых процедур в базе данных Sybase. Используя SQL, может я получать список всех хранимых процедур, которые используют конкретную таблицу, говорят tbl_books
?
Используйте что-то вроде этого:
Select distinct sysobjects.name
, case
when sysobjects.type = 'TR' then 'TRIGGER'
when sysobjects.type = 'P' then 'PROCEDURE'
when sysobjects.type = 'V' then 'VIEW'
else 'UNKNOWN' end type
from sysobjects inner join syscomments
on sysobjects.id = syscomments.id
where syscomments.text like '%tbl_books%'
Как насчет чего-то вроде:
select proc_name from sysprocedures where proc_defn like "%tbl_books%"
Первоначально я бы попробовал sp_depends
.
Syntax: sp_depends objname[, column_name]
Для objname
вы можете указать любое имя объекта, например, таблицу, представление или макрос.