para cualquiera ....

12/09/2003 - 19:36 por Emerson | Informe spam
para cualquiera que haga ello más de un store procedure, me puede ayudar.

este SP me permite devolver valores de las columnas,

CREATE PROCEDURE act_resumen02 AS
select nombres FROM act_Alumno
GO

pero no puedo obteber el valor de 'estado' en este otro:

CREATE PROCEDURE act_resumen
@estado char(1) = 0 OUTPUT
AS
select @estado = 9
GO

lo estoy llamando desde un a página asp:

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "act_Contabilidad","ss",""

sSQLcampos = "EXEC act_resumen "
set RS = Conn.Execute(sSQLcampos)

response.write "@estado = "& RS("estado") &" __<br>"


cualquier ayuda, muy agradecido.

Emerson

Preguntas similare

Leer las respuestas

#6 Manuel Vera
12/09/2003 - 23:25 | Informe spam
Si solo quieres devolver 1 variable, usa el OUTPUT.
Acerca de los valores pues usar todo lo que sea valido para el tipo de
datos.
Siguiendo el ejemplo:
SELECT @Ultimo = Tipo FROM Tabla WHERE Codigo = 234234
o
SELECT @Ultimo = 987
Inclusive, cuando se trata de una sola asignación a una sola variable se
recomienda usar SET:
SET @Ultimo = 987
Para el caso de arriba no aplica.

Tu preguntaste por esto "@variable_paso = 5". Eso es incorrecto, debes
colocarlo:
SET @variable_paso = 5
o
SELECT @variable_paso = 5

Si por el contrario es mas de una variable sin devolver un recordset puedes:
SELECT @var1 as var1, var2 = @var2, 'mi var 3' = @var3
, @var4 as 'la variable 4'

Saludos
MV


Emerson wrote in message
news:
Me parece pero el @@IDENTITY funcionará para todas las variables?

por ejemplo si, por decir algo, existe una variable
@variable_paso = 5

cómo la puedo obtener desde el código, sino es un campo de un SELECT.

me explico?, sólo doy un ejemplo cualquiera, pero la pregunta es cómo puedo
extraer variables desde el SP a mi página ASP?

Gracias por la ayuda,

Emerson


"Manuel Vera" wrote in message
news:
Tabla con clave identity, y campo Nombre.
create proc spResumen
@Nombre varchar(8)
, @Ultimo int output
as
INSERT INTO Nombres (Nombre)
VALUES (@Nombre)
SELECT @Ultimo = @@IDENTITY
GO

Set Cmd1 = server.CreateObject("ADODB.Command")
Set Cmd1.ActiveConnection = Connect
Cmd1.CommandText = "spResumen"
Cmd1.CommandType = adCmdStoredProc
Cmd1.Parameters.Refresh
Cmd1.Parameters(1).Value = "Manuel"
Cmd1.Execute()
ULTIMO = Cmd1.Parameters(2).Value

Otra forma es esta (aunque no la he probado, pero por aqui va el tiro)

create proc spResumen
@Nombre varchar(8)
as
INSERT INTO Nombres (Nombre)
VALUES (@Nombre)
SELECT @@IDENTITY AS ultimo
GO

Set RS = server.CreateObject("ADODB.Recordset")
RS.Open "spResumen 'Manuel'", Connect, 0, 1
if not RS.eof then
ULTIMO = RS(0)
' ULTIMO = RS("ultimo")
end if

Saludos
MV

Emerson wrote in message
news:
estimado o mejor dicho estimados,

pero si quiero devolver una variable como un contador, algo que no viene


de
una query directamente...?

Emerson

"Matias Iacono" wrote in message
news:ulKG#
> No se mucho de SP... pero el select del segundo caso no tiene


sentido
> creo que en todo caso deberia ser asi:
>
> CREATE PROCEDURE act_resumen
> @estado char(1) = 0 OUTPUT
> AS
> @estado = (select estado from tabla where estado = 9)
> GO
>
> O... en todo caso, puedes retornar el SQL simplemente poniendo la


clausula
> del select sin la variable.
>
> "Emerson" wrote in message
> news:%
> > para cualquiera que haga ello más de un store procedure, me puede
ayudar.
> >
> > este SP me permite devolver valores de las columnas,
> >
> > CREATE PROCEDURE act_resumen02 AS
> > select nombres FROM act_Alumno
> > GO
> >
> > pero no puedo obteber el valor de 'estado' en este otro:
> >
> > CREATE PROCEDURE act_resumen
> > @estado char(1) = 0 OUTPUT
> > AS
> > select @estado = 9
> > GO
> >
> > lo estoy llamando desde un a página asp:
> >
> > Set Conn = Server.CreateObject("ADODB.Connection")
> > Conn.Open "act_Contabilidad","ss",""
> >
> > sSQLcampos = "EXEC act_resumen "
> > set RS = Conn.Execute(sSQLcampos)
> >
> > response.write "@estado = "& RS("estado") &" __<br>"
> >
> >
> > cualquier ayuda, muy agradecido.
> >
> > Emerson
> >
> >
>
>




Respuesta Responder a este mensaje
#7 Emerson
15/09/2003 - 16:11 | Informe spam
gracias, me queda revisar .

Emerson


"Emerson" wrote in message
news:
estimado o mejor dicho estimados,

pero si quiero devolver una variable como un contador, algo que no viene


de
una query directamente...?

Emerson

"Matias Iacono" wrote in message
news:ulKG#
> No se mucho de SP... pero el select del segundo caso no tiene


sentido
> creo que en todo caso deberia ser asi:
>
> CREATE PROCEDURE act_resumen
> @estado char(1) = 0 OUTPUT
> AS
> @estado = (select estado from tabla where estado = 9)
> GO
>
> O... en todo caso, puedes retornar el SQL simplemente poniendo la


clausula
> del select sin la variable.
>
> "Emerson" wrote in message
> news:%
> > para cualquiera que haga ello más de un store procedure, me puede
ayudar.
> >
> > este SP me permite devolver valores de las columnas,
> >
> > CREATE PROCEDURE act_resumen02 AS
> > select nombres FROM act_Alumno
> > GO
> >
> > pero no puedo obteber el valor de 'estado' en este otro:
> >
> > CREATE PROCEDURE act_resumen
> > @estado char(1) = 0 OUTPUT
> > AS
> > select @estado = 9
> > GO
> >
> > lo estoy llamando desde un a página asp:
> >
> > Set Conn = Server.CreateObject("ADODB.Connection")
> > Conn.Open "act_Contabilidad","ss",""
> >
> > sSQLcampos = "EXEC act_resumen "
> > set RS = Conn.Execute(sSQLcampos)
> >
> > response.write "@estado = "& RS("estado") &" __<br>"
> >
> >
> > cualquier ayuda, muy agradecido.
> >
> > Emerson
> >
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida