Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MS SQL Server (https://www.clubdelphi.com/foros/forumdisplay.php?f=23)
-   -   Ejecutar procedimiento almacenado con case!! (https://www.clubdelphi.com/foros/showthread.php?t=81466)

Melissa_12 16-11-2012 20:31:05

Ejecutar procedimiento almacenado con case!!
 
Hola, tengo el siguiente problema, estoy tratando de ejecutar un procedimiento almacenado desde una sentencia sql. El caso es el siguiente, este procedimiento se ejecutará si un campo determinado es null, he tratado de hacerlo con CASE pero no me funciona.
Tengo una tabla con un campo que se llama campo1
Si campo1 es Null entonces ejecuto el procedimiento. Gracias!.

Casimiro Notevi 16-11-2012 20:33:16

¿Pero cual es el problema y dónde está el código?
Código SQL [-]
if campo is null then lo que quieras

Melissa_12 16-11-2012 20:42:27

Esto es lo que trato de hacer:


SELECT CASE Campo1 WHEN NULL THEN
EXEC dbo.sp_stop_job N'Test 2'
FROM Tabla1

Me da error, dice que hay una sintaxis incorrecta cerca de EXEC

Casimiro Notevi 16-11-2012 20:45:01

¿Y ese qué sql es?

Melissa_12 16-11-2012 20:52:38

Como seria entonces para que si el campo es null ejecute ese procedimiento almacenado?

TOPX 16-11-2012 21:12:34

Cita:

Empezado por Melissa_12 (Mensaje 449723)
Me da error, dice que hay una sintaxis incorrecta cerca de EXEC

Adivino que es MS Sql Server. Así que:
Código SQL [-]
BEGIN
  DECLARE @Valor1 INT -- u otro tipo de dato

  SELECT 
    @Valor1 = Campo1 
  FROM Tabla1

  IF @Valor1 IS NULL 
  BEGIN
    EXEC dbo.sp_stop_job N'Test 2'
  END
END
-

Melissa_12 16-11-2012 21:54:37

Muchas Gracias TOPX, me sirvio mucho!!!

Casimiro Notevi 16-11-2012 22:19:24

Cita:

Empezado por TOPX (Mensaje 449730)
Adivino que es MS Sql Server.

Vaya, eso es lo que pregunté antes.

Cita:

Empezado por Melissa_12 (Mensaje 449732)
Muchas Gracias TOPX, me sirvio mucho!!!

Por favor, recuerda poner las preguntas en el foro adecuado, tenemos uno de MS sql server.

Por cierto, creo que eso ya te lo contesté antes:
Código SQL [-]
if campo is null then ....


La franja horaria es GMT +2. Ahora son las 00:52:44.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi