Red de conocimiento informático - Material del sitio web - Cómo encontrar rápidamente todos los procedimientos almacenados que utilizan un determinado campo

Cómo encontrar rápidamente todos los procedimientos almacenados que utilizan un determinado campo

Cuando un sistema utiliza muchas tablas y hay una gran cantidad de procedimientos almacenados, y cuando se elimina un determinado campo de una tabla en la base de datos, los procedimientos almacenados correspondientes también deben cambiarse, pero no No lo sé. ¿Qué procedimientos almacenados utilizan este campo? Entonces, ¿qué debemos hacer? Podemos buscar los procedimientos almacenados que usan este campo uno por uno en los documentos anteriores, pero esto es muy eficiente y propenso a errores. Podemos usar el siguiente método para encontrar todos los procedimientos almacenados que usan un determinado campo. Las siguientes funciones:

[sql] ¿ver Plaincopyprint?

01.GO

02.SELECT obj.Name es el nombre del procedimiento almacenado, sc.TEXT es el contenido del procedimiento almacenado

03.FROM syscomments sc

04.INNER JOIN sysobjects obj ON sc.Id = obj.ID

05.WHERE sc.TEXT LIKE '' ' Nombre del campo ' ''

06.AND TYPE = 'P'

07.GO

GO

SELECT obj.Name almacenamiento Nombre del procedimiento, sc.TEXT contenido del procedimiento almacenado

DESDE syscomments sc

INNER JOIN sysobjects obj ON sc.Id = obj.ID

DONDE sc.TEXT LIKE '' 'Nombre de campo' ''

AND TYPE = 'P'

GO

El siguiente es un ejemplo, como buscar todos el AdId en la base de datos Todos los procedimientos almacenados para los campos.

[sql] ver Plaincopyprint?

01.USE KyCms

02.GO

03.SELECT obj.Name nombre del procedimiento almacenado , sc.TEXT contenido del procedimiento almacenado

04.FROM syscomments sc

05.INNER JOIN sysobjects obj ON sc.Id = obj.ID

06.WHERE sc.TEXT COMO '' 'AdID' ''

07.AND TYPE = 'P'

08.GO

USE KyCms

GO

SELECT obj.Name nombre del procedimiento almacenado, sc.TEXT contenido del procedimiento almacenado

FROM syscomments sc

INNER JOIN sysobjects obj ON sc.Id = obj.ID

DONDE sc.TEXT COMO '' 'AdID' ''

Y TIPO = 'P'

GO