Fácil para cualquiera que lo sepa. En los procedimientos almacenados de TSQL, ¿cómo se escribe una instrucción if que compare el valor de un bool? Como estoy acostumbrado a C# demasiado tiempo, me pongo llaves, llaves redondas y todo tipo de cosas, y creo que me estoy equivocando.Procedimiento almacenado T-SQL If boolean check
10
A
Respuesta
24
DECLARE @bool BIT = 1
IF @bool = 1
BEGIN
-- do stuff here
PRINT 'it was true';
END
ELSE
BEGIN
-- do other stuff here
PRINT 'it was not true';
END
Si sólo tiene una sola línea dentro del Si, pues, Don No es necesario el BEGIN
y el END
, pero probablemente sea una buena práctica usarlos de todos modos.
3
El correspondiente tipo de datos SQL a booleano es poco, es decir, 1 para verdadero y 0 para falso, por lo que:
IF(@Statement=1)
BEGIN
SELECT COUNT(*) FROM Table
END
ELSE
BEGIN
SELECT MIN(ID) FROM Table
END
END
+0
Tiene un 'END' adicional allí. 'SI ... ELSE ...' no termina con una palabra clave 'END'. Solo los necesita para cada bloque 'BEGIN ... END' – KyleMit
Cuestiones relacionadas
- 1. IF/ELSE Procedimiento almacenado
- 2. MySQL: IF en el procedimiento almacenado
- 3. parámetro "Boolean" para el procedimiento almacenado de Oracle
- 4. IF/ELSE dependiendo resultado de procedimiento almacenado
- 5. TSQL: llame a un procedimiento almacenado desde otro procedimiento almacenado y lea el resultado
- 6. boolean checking if()
- 7. Procedimiento almacenado al ejecutar otro procedimiento almacenado
- 8. Transacción de procedimiento almacenado
- 9. procedimiento almacenado devuelve varchar
- 10. Procedimiento almacenado NULL Parámetro
- 11. Ejecutar un procedimiento almacenado dentro de un procedimiento almacenado
- 12. Cómo llamar a un procedimiento almacenado desde otro procedimiento almacenado?
- 13. Desaparición del procedimiento almacenado
- 14. hibernar y procedimiento almacenado
- 15. Procedimiento almacenado roto guardado
- 16. Procedimiento almacenado asincrónico Llamadas
- 17. Magento: Crear procedimiento almacenado
- 18. procedimiento almacenado da diferente conjunto de resultados que tsql, sólo en algunos servidores
- 19. Ruby check if nil before calling method
- 20. Ejecución del procedimiento almacenado sincronizado en mysql
- 21. procedimiento almacenado con resultados condicionales
- 22. Llamar a un procedimiento almacenado python
- 23. El acceso a TSQL creó tablas #temp del procedimiento almacenado CLR. ¿Es posible?
- 24. Procedimiento almacenado consulta de eliminación
- 25. ¿Cómo programar un procedimiento almacenado?
- 26. ¿El procedimiento almacenado más ejecutado?
- 27. Cómo guardar un procedimiento almacenado?
- 28. procedimiento almacenado no devuelve nada
- 29. ¿Crear procedimiento almacenado y SQLite?
- 30. Suprimir transacción en procedimiento almacenado
¿A dónde va otro? ¿Después o antes del FIN? –
He agregado una cláusula ELSE a la respuesta: va después del FIN. –