Ver la Versión Completa : Help Con Este Procedure`
Ledian_Fdez
05-11-2015, 21:50:48
Hola amigos tengo este procedimiento almacenado
ALTER PROCEDURE COMPARE
AS
DECLARE @X INT
DECLARE @B INT
SET @B = 20
SELECT TOP 1 @X=IDMOVIMIENTO FROM MOVIMIENTO ORDER BY IDMOVIMIENTO DESC
IF @X>@B
PRINT @X + ' ES MAYOR QUE ' + @B
cuando lo ejecuto
EXEC COMPARE
me lanza este error Conversion failed when converting the varchar value ' ES MAYOR QUE ' to data type int.
Grasias de antemano
Saludos,
roman
05-11-2015, 22:14:13
No conozco SQL Server pero supongo que la concatenación de cadenas no se hace con el operador +. En tu expresión:
PRINT @X + ' ES MAYOR QUE ' + @B
seguramente intenta convertir la cadena a entero para acoplarse a los otros parámetros. Busca a ver si hay una función CONCAT.
// Saludos
fjcg02
05-11-2015, 22:54:21
Hola
Dudo si un procedimiento puede hacer un print y que se vea algo...
Por otro lado, print sólo puede usarse con strings, aunque si pone PRINT @X siendo @X un entero, creo que hace la conversión automática.
Si quieres hacer lo que muestras, debes hacer un cast de los enteros.
PRINT cast(@X as varchar(20))+' HOLAKEASE '+cast(@B as varchar(20))
Saludos
Osorio
06-11-2015, 14:24:25
Si lo que quieres es enviar un mensaje de error es mejor que veas:
RAISERROR
Ejemplo:
RAISERROR('esto es una prueba',16,217)
Si lo que quieres es indicar un estado o "informar" algo a tu aplicacion que consume el procedimiento almacenado, entonces puedes utilizar un parametro de salida OUTPUT.
Puedes darle un vistazo a este enlace:
https://technet.microsoft.com/es-es/library/ms187004%28v=sql.105%29.aspx
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.