Contenido de un Sotred Procedure

16/09/2004 - 22:52 por wandoo | Informe spam
Hola a todos, alguien me podría decir de donde puedo sacar
información sobre:
¿Cómo sacar los nombres de las tablas que un Stored
Procedure manipula?

SELECT name FROM sysobject
WHERE xtype='U' AND OBJECTPROPERTIES(id,'IsMSShipped') = 0

Con esta instrucción obtengo los nombres de los Stored
Procedure definidos por el usuario, pero necesito saber
como saco los nombres de las tablas que manipula cada uno,
esto porque tengo más de 600 sp y necesito sacar las tablas
que modifican para realizar la documentación del sistema.

Mil gracias.

Preguntas similare

Leer las respuestas

#1 Maxi
16/09/2004 - 23:01 | Informe spam
Hola, revisa el uso de

sp_depends


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"wandoo" escribió en el mensaje
news:27f901c49c2f$091b0c20$
Hola a todos, alguien me podría decir de donde puedo sacar
información sobre:
¿Cómo sacar los nombres de las tablas que un Stored
Procedure manipula?

SELECT name FROM sysobject
WHERE xtype='U' AND OBJECTPROPERTIES(id,'IsMSShipped') = 0

Con esta instrucción obtengo los nombres de los Stored
Procedure definidos por el usuario, pero necesito saber
como saco los nombres de las tablas que manipula cada uno,
esto porque tengo más de 600 sp y necesito sacar las tablas
que modifican para realizar la documentación del sistema.

Mil gracias.



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.764 / Virus Database: 511 - Release Date: 15/09/2004
Respuesta Responder a este mensaje
#2 Adrian D. Garcia
17/09/2004 - 03:41 | Informe spam
En realidad la sentencia que lista todos los SPs de una base de datos es la
siguiente:

SELECT name FROM sysobjects
WHERE xtype='P' AND OBJECTPROPERTY(id,'IsMSShipped') = 0

ahora, el siguiente select lista las tablas que dependen de un procedimiento
almacenado, en este caso ''CategoriasBuscar':

select distinct 'name' = (s6.name+ '.' + o1.name)
from sysobjects o1
,master.dbo.spt_values v2
,sysdepends d3
,master.dbo.spt_values u4
,master.dbo.spt_values w5
,sysusers s6
where o1.id = d3.depid
and o1.xtype = substring(v2.name,1,2) collate database_default and v2.type
= 'O9T'
and u4.type = 'B' and u4.number = d3.resultobj
and w5.type = 'B' and w5.number = d3.readobj|d3.selall
and d3.id = object_id('CategoriasBuscar')
and o1.uid = s6.uid
and deptype < 2
and substring(v2.name, 5, 16) = 'user table'

Ahora lo que queda es unir los 2 en 1 solo select.
Saludos
Adrian D. Garcia
MCSD
NDSoft Consultoria y Desarrollo

"wandoo" wrote in message
news:27f901c49c2f$091b0c20$
Hola a todos, alguien me podría decir de donde puedo sacar
información sobre:
¿Cómo sacar los nombres de las tablas que un Stored
Procedure manipula?

SELECT name FROM sysobject
WHERE xtype='U' AND OBJECTPROPERTIES(id,'IsMSShipped') = 0

Con esta instrucción obtengo los nombres de los Stored
Procedure definidos por el usuario, pero necesito saber
como saco los nombres de las tablas que manipula cada uno,
esto porque tengo más de 600 sp y necesito sacar las tablas
que modifican para realizar la documentación del sistema.

Mil gracias.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida