Si un procedimiento almacenado devuelve un valor de cero, ¿significa eso que se ejecutó correctamente? Estoy usando MS SQL Server 2008.¿Es un valor de retorno de 0 siempre exitoso en los procedimientos almacenados?
Respuesta
No, puede devolver algo por sí mismo
ejemplo
CREATE PROC pr_test AS
SELECT 1/0
RETURN 0
GO
Ahora ejecutarlo
DECLARE @i INT
exec @i = pr_test
SELECT @i -- will be 0
DROP PROC pr_test
Ahora vamos a hacerlo de nuevo sin la instrucción de retorno
CREATE PROC pr_test2 AS
SELECT 1/0
GO
DECLARE @i INT
exec @i = pr_test2
SELECT @i -- will be - 6
mejor utilizar un output parameter
a pasar de nuevo a los estados y mensajes o
¿Cómo es el valor de retorno 6? y el resultado dice - Msg 8134, nivel 16, estado 1, procedimiento pr_test2, línea 3 Se ha encontrado un error de división por cero. (1 fila (s) afectadas) – Mahesh
Puede utilizar la palabra Return
devolver cualquier valor entero de un procedimiento almacenado . Eso significa que cero no significa que el procedimiento almacenado se ejecutó con éxito.
Un valor de retorno @@ ERROR de "cero" indica que su procedimiento se completó sin ningún error.
Por supuesto, eso no quiere decir que hizo lo que quería que ...
¿Puede ser más específico acerca de lo que estás viendo?
- 1. Procedimientos almacenados en el marco de entidad
- 2. ¿El SQL formado dinámicamente en los procedimientos almacenados niega el propósito mismo de los procedimientos almacenados?
- 3. Sistema PHP() - el estado de retorno es siempre 0
- 4. retorno 0 cuando un valor de una celda es negativo
- 5. Versiones de procedimientos almacenados
- 6. Procedimientos almacenados - Fin de días
- 7. Cómo recuperar los valores devueltos de procedimientos almacenados de un TableAdapter
- 8. WebMatrix y procedimientos almacenados
- 9. indexPath.row siempre es 0
- 10. ¿Pueden los procedimientos almacenados devolver un conjunto de resultados?
- 11. Eliminar todos los procedimientos almacenados en MySQL o usar procedimientos almacenados temporales
- 12. Procedimientos almacenados y funciones
- 13. ¿Cómo encontrar los procedimientos almacenados por nombre?
- 14. Ejecución de procedimientos almacenados desde un DbContext
- 15. MySQL: ¿Cómo modificar los procedimientos almacenados atómicamente?
- 16. Funciones vs procedimientos almacenados
- 17. ¿Los procedimientos almacenados bloquean las tablas/filas?
- 18. ¿Cuándo debo usar los procedimientos almacenados?
- 19. Tablas temporales en procedimientos almacenados
- 20. ¿SQL Server Compact Edition es compatible con los procedimientos almacenados?
- 21. procedimientos almacenados con sqlAlchemy
- 22. Clasificación dinámica dentro de los procedimientos almacenados de SQL
- 23. Patrones para procedimientos almacenados?
- 24. ¿Es un error un valor de retorno de 0 desde write (2) en C?
- 25. inputstream.available() es 0 siempre
- 26. Uso de procedimientos almacenados en rieles
- 27. ¿Cómo se depuran los procedimientos almacenados de MySQL?
- 28. Procedimientos almacenados vs. Vistas
- 29. Expresiones regulares en procedimientos almacenados
- 30. herramienta generador de procedimientos almacenados
No estoy seguro de cuál es su pregunta. Si puede escribir el SP y elegir el valor de retorno, ¿no es la respuesta "no"? – dkretz
La información relacionada en la declaración de devolución también podría ser de ayuda: http://stackoverflow.com/questions/2578536/msdn-about-stored-procedure-default-return-value – TheEmirOfGroofunkistan
Para obtener más detalles sobre el procedimiento de devolución de la tienda, puede leer este artículo en MSDN https://msdn.microsoft.com/en-us/library/ms188655.aspx y https://msdn.microsoft.com/en-us/library/ms174998.aspx –