Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

DEVOLVER DATOS CON PROCEDIMIENTOS ALMACENADOS

2 views
Skip to first unread message

javito

unread,
Dec 2, 2009, 7:38:16 AM12/2/09
to
Estoy revisando los procedimientos almacenados y veo con facilidad como un
preocedimiento devuelve una variable definida como par�metro de salida
(output) simplemente igual�ndolo a la expresi�n de ejecuci�n y luego
devolvi�ndolo con el Return, pero como se puede hacer para devolver varios
valores, entiendo que en un procedimiento almacenado no existen objetos como
el SQLDataReader y entonces � como devolver varias cosas ?

un saludo


Alberto Poblacion

unread,
Dec 2, 2009, 4:33:16 PM12/2/09
to
"javito" <fjjc...@mi.madritel.es> wrote in message
news:%239tpLf2...@TK2MSFTNGP04.phx.gbl...

Create Procedure Prueba (
@Dato1 INT OUTPUT,
@Dato2 Varchar(10) OUTPUT,
etc. )
AS
Select @Dato1=Campo1, @Dato2=Campo2 FROM MiTabla
-- O bien: SET @Dato1=1234 etc.
GO

Para llamarlo desde c�digo cliente:

SqlCommand cmd = new SqlCommand("Prueba", conexion);
cmd.CommandType = CommandTye.StoredProcedure;

Sql Parameter param1 = new SqlParameter("@Dato1", SqlDbType.Int);
param1.Direction = ParameterDirection.Output;
cmd.Parameters.Add(param1);

Sql Parameter param2= new SqlParameter("@Dato2", SqlDbType.Varchar, 10);
param2.Direction = ParameterDirection.Output;
cmd.Parameters.Add(param2);

conexion.Open();
cmd.ExecuteNonQuery();

int dato1 = (int)param1.Value;
string dato2 = (string)param2.Value;

conexion.Close();

0 new messages