Traer mas de 1 tabla

18/12/2003 - 15:06 por Jonathan Molina | Informe spam
Si quiero traer mas de 1 tabla a un DataSet, tengo que
crear un sqlCommand y sqlDataAdapter para cada tabla?
No se puede crear una variable global:
private sqlCommand sqlCom;
private sqlDataAdapter sqlDa;

y despues crear un metodo

sqlCom = new SqlCommand;

Eso probe pero hay algo que no funciona, y quiero saber si
viene por ahi la mano.

Gracias

Preguntas similare

Leer las respuestas

#1 A.Poblacion
18/12/2003 - 15:56 | Informe spam
Sí, es perfectamente lícito reutilizar el mismo command cambiándole la
sentencia. Ni siquiera es necesario volver a hacer un "new". Si no te
funciona, el error debe estar en alguna otra parte.

Un ejemplo:
SqlCommand cmd = new SqlCommand();
cmd.Connection = ...;
cmd.CommandText="Select ... from tabla1";
SqlDataAdapter da= new SqlDataAdapter;
da.SelectComand=cmd;
DataSet ds=new DataSet();
da.Fill(ds,"tabla1");
cmd.CommandText="Select ... from tabla2";
da.Fill(ds,"tabla2");

"Jonathan Molina" wrote in message
news:0a0501c3c570$1f4a2df0$
Si quiero traer mas de 1 tabla a un DataSet, tengo que
crear un sqlCommand y sqlDataAdapter para cada tabla?
No se puede crear una variable global:
private sqlCommand sqlCom;
private sqlDataAdapter sqlDa;

y despues crear un metodo

sqlCom = new SqlCommand;

Eso probe pero hay algo que no funciona, y quiero saber si
viene por ahi la mano.

Gracias
Respuesta Responder a este mensaje
#2 Xavier Lucatero
18/12/2003 - 20:24 | Informe spam
Creo que tambien se puede hacer lo siguiente
cmd.CommandText="Select ... from tabla1;Select ... from tabla2;...";
"A.Poblacion" escribió en
el mensaje news:
Sí, es perfectamente lícito reutilizar el mismo command cambiándole la
sentencia. Ni siquiera es necesario volver a hacer un "new". Si no te
funciona, el error debe estar en alguna otra parte.

Un ejemplo:
SqlCommand cmd = new SqlCommand();
cmd.Connection = ...;
cmd.CommandText="Select ... from tabla1";
SqlDataAdapter da= new SqlDataAdapter;
da.SelectComand=cmd;
DataSet ds=new DataSet();
da.Fill(ds,"tabla1");
cmd.CommandText="Select ... from tabla2";
da.Fill(ds,"tabla2");

"Jonathan Molina" wrote in message
news:0a0501c3c570$1f4a2df0$
> Si quiero traer mas de 1 tabla a un DataSet, tengo que
> crear un sqlCommand y sqlDataAdapter para cada tabla?
> No se puede crear una variable global:
> private sqlCommand sqlCom;
> private sqlDataAdapter sqlDa;
>
> y despues crear un metodo
>
> sqlCom = new SqlCommand;
>
> Eso probe pero hay algo que no funciona, y quiero saber si
> viene por ahi la mano.
>
> Gracias


Respuesta Responder a este mensaje
#3 JersSoft
19/12/2003 - 19:48 | Informe spam
Hola a todos,
normal, puedes usar los mismos objetos para "traer" mas de una tabla y
ponerla en el dataset,
pero el problema se daria cuando desees regresar la informacion a la Base de
Datos, para estos casos si es necesario separar un DataAdapter por
DataTable.

Pero si solo jalas la data para mostrarla (y no va retornar nunca a la DB),
no hay porblem :D

Saludos

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