Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

MSSQL - Visualizar sentencia SQL generada por un SP

Estas en el tema de MSSQL - Visualizar sentencia SQL generada por un SP en el foro de Bases de Datos General en Foros del Web. Hola a todos: Tengo un procedimiento almacenado al que le paso unos parámetros y me realiza una búsqueda en un par de tablas. ¿Es posible ...
  #1 (permalink)  
Antiguo 24/05/2005, 07:41
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 2 meses
Puntos: 1
MSSQL - Visualizar sentencia SQL generada por un SP

Hola a todos:
Tengo un procedimiento almacenado al que le paso unos parámetros y me realiza una búsqueda en un par de tablas.
¿Es posible visualizar la sentencia SQL generada por el sp?, ya que no obtengo el resultado que deseo y quiero saber donde esta el problema.
¿Se entiende lo que quiero?

Nota: Trabajo con ASP

Muchas gracias.
  #2 (permalink)  
Antiguo 24/05/2005, 07:45
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 8 meses
Puntos: 16
??????????????????'

en el enterprise manager/tu base de datos/procedimientos almacenados

y haces un doble click en el icono.... ... ... ....


o quieres hacerlo por ASP ????

no se si es que se pueda hacer eso.
  #3 (permalink)  
Antiguo 24/05/2005, 07:50
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 2 meses
Puntos: 1
Ante todo debo pedir disculpas, porque publique este tema en el foro equivocado, lo debería haber hecho en el de Bases de Datos (¡Que salame!). Si algun moderador lo puede cambiar estaría bueno.
Muzztein, gracias por responder, eso que me dices lo sé. Lo que necesito es ver como queda la sentencia SQL formada cuando le paso los parámetros.
  #4 (permalink)  
Antiguo 24/05/2005, 08:30
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Cita:
Lo que necesito es ver como queda la sentencia SQL formada cuando le paso los parámetros.
No puedes obtener lo que deseas a mejor que debugues los SP, pero hay una forma mucho más fácil. Supongo le mandas los parámetros desde ASP, por lo que sabes el tipo, la extensión y el valor de los parámetros. Toma estos valores y en el analizador de consultas sustituye cada parámetro por su valor correspondiente. Con eso tendras.

Saludos
  #5 (permalink)  
Antiguo 24/05/2005, 08:31
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 8 meses
Puntos: 16
asi como para hacer un debug dices tu ????

mnmnmnmnmnmnmnmnmnmnmnmmnnmmnmmmnnmnmmnmnmnm n m mn mn mn mn mn m m mn mn mnm nmnmnmn mnmn mnm nm m m n mnmn mn mn mnmnmn m n n mn mnmnmnn nmnm nmn mn m en plsql no se puede hacer eso.
asique creo que en ms sql tampoco podria hacerse.

aun que investigaré.
  #6 (permalink)  
Antiguo 24/05/2005, 08:42
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Nunca tuve necesidad de debugear un SP ni en Oracle ni en SQL-Server, pero en los diversos cursos que hemos tomado, es un tema recurrente. Se pueden debuguar con herramientas de terceros o con herramientas propias, aunque como bien mencionas, hay que investigar.

Pe. http://msdn.microsoft.com/library/de...edebugtech.asp

Saludos
  #7 (permalink)  
Antiguo 24/05/2005, 08:53
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 2 meses
Puntos: 1
Los sospeché desde un principio!!! diría el Chapulín Colorado.
Bueno, me tendré que poner a investigar como hacerlo.

Muchas gracias por sus comentarios y sugerencias.
  #8 (permalink)  
Antiguo 24/05/2005, 14:52
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
¿Estas haciendo código dinámico, del tipo EXEC ('select algo FROM tabla WHERE ' + @campo + '=algo')?

Prueba en lugar del EXEC reemplazarlo por un PRINT, eso te dejará en la ventana de mensajes la sentencia que estás armando.

Otra alternativa es probar con el SQL Profiler, donde te conectas y haces trazas de la actividad del servidor (incluyendo tu SP prolemático)
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #9 (permalink)  
Antiguo 24/05/2005, 17:44
Avatar de Neuron_376  
Fecha de Ingreso: abril-2005
Mensajes: 1.051
Antigüedad: 19 años
Puntos: 2
Humm...

Cuando quiero ir probando un SP, solo agrego esto:

if (@@error > 0)
begin
select 1
return 0
end

if (@@ROWCOUNT <= 0) 'No
begin
select 2 --Algo como, no me actualizo nada en la tabla, o, no me inserto ningun registro.
return 0
end

Bueno, esa seria una forma, suerte!!

Consejo, trata de no usar Exec, claro, es valido y yo tambien lo uso cuando lo necesito, pero la ventaja grande de un SP, es que tiene ya todas las instrucciones compiladas, y un exec lo hace mas lento, es decir, en partes pierdes la ventaja de velocidad que te ofrece un SP.

Si puedes evitarlo mejor.

Suerte!!
__________________
NeuronaNet.com... la idea correcta.
http://www.NeuronaNet.com
  #10 (permalink)  
Antiguo 19/07/2010, 10:17
Avatar de almerak  
Fecha de Ingreso: abril-2006
Ubicación: en algun lugar
Mensajes: 60
Antigüedad: 18 años
Puntos: 0
Respuesta: MSSQL - Visualizar sentencia SQL generada por un SP

yo lo que hago es a mi consulta generada por mi sp le intercambio el
exec(@miconsulta)
por un
select @miconsulta
y me envia el resultado en el sql, ya luego le doy click derecho y me da la posibilidad de copiar el row regresado, y ya lo pego y compruebo que le falta al sp o en que falla
__________________
©‹∞‹ηαςђσ◊μάη›∞›®
ŧђε ύηĩνεгşε ĩş Ϊηƒĩηĩţε άηd Ϊ Ϊηƒĩηĩţε
  #11 (permalink)  
Antiguo 21/07/2010, 18:08
 
Fecha de Ingreso: febrero-2009
Mensajes: 312
Antigüedad: 15 años, 2 meses
Puntos: 4
Respuesta: MSSQL - Visualizar sentencia SQL generada por un SP

Hola oara hacer debugs, lo mejor son generar trazas.

Cualquier gestor lo tiene, en MSSQL está el profiler.

Saludos

Última edición por ejbsoft; 21/07/2010 a las 18:11 Razón: corrección
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:34.