in my java application I've made a call to this stored procedure
CREATE procedure pruebaICM
@pANI varchar(20),
@pTABLA varchar(20),
@pInsert varchar(500),
@pUpdate varchar(1000),
@pFLAG varchar(1),
@pResultado int OUTPUT
as
begin
DECLARE @ani varchar(20)
declare @cliente int
DECLARE @sentencia nvarchar(1000)
DECLARE @tabla nvarchar(20)
DECLARE @sentencia_where nvarchar(50)
DECLARE @sql nvarchar(1050)
SET NOCOUNT ON
set @tabla = @pTABLA
set @ani = @pANI
SELECT @sql= N'select @cliente=count(ani) from '+ @tabla + N' where
ani = ' + @ani
exec sp_executesql @sql, N'@Cliente INT OUTPUT', @Cliente OUTPUT
SELECT @Cliente
if (@pFLAG = 'A') or (@pFLAG = 'Actualizar') or (@pFLAG = 'I')
begin
if (@cliente = 0)
begin
set @sentencia = N'insert into ' +
@pTABLA + N' values (' + @pInsert + N')'
EXEC sp_executesql @sentencia
set @pResultado = 1
SELECT @pResultado
return @pResultado
end
if (@cliente = 1)
begin
set @sentencia = N'update ' + @pTABLA +
N' set ' + @pUpdate
set @sentencia_where = N' where ANI =
' + @pANI
set @sql = @sentencia +
@sentencia_where
EXEC sp_executesql @sql
set @pResultado = 2
SELECT @pResultado
return @pResultado
end
end
else if (@pFLAG = 'B') or (@pFLAG = 'Borrar')
begin
if (@cliente = 0)
begin
set @pResultado = 0
SELECT @pResultado
return @pResultado
end
else if (@cliente = 1)
begin
set @sentencia = N'delete from '+
@pTABLA + N' where ANI = ' + @pANI
EXEC sp_executesql @sentencia
set @pResultado = 3
SELECT @pResultado
return @pResultado
end
end
EXEC sp_cursorclose
end
My problem is that the ouutput param @pResultado haven't got any value
and don't return anything to the java application. How can I fix this
problem?
Thanka very much for helping me!!!!