Foros del Web » Programación para mayores de 30 ;) » .NET »

¿Como llenar un dataset con todas las tablas de la BD?

Estas en el tema de ¿Como llenar un dataset con todas las tablas de la BD? en el foro de .NET en Foros del Web. Ola amigos, mi pregunta es para un Windows form y es la siguiente: Como puedo cargar en un datset todas las tablas de mi base ...
  #1 (permalink)  
Antiguo 02/11/2004, 08:50
 
Fecha de Ingreso: octubre-2004
Mensajes: 211
Antigüedad: 19 años, 6 meses
Puntos: 2
¿Como llenar un dataset con todas las tablas de la BD?

Ola amigos, mi pregunta es para un Windows form y es la siguiente:

Como puedo cargar en un datset todas las tablas de mi base de datos? , alguna consulta en especial para el dataAdapter?, Esto lo pregunto porque el dataSet lo lleno en tiempo de ejecución y en la base de datos puede haber mas tablas que la ultima vez que la abrí. (en la aplicación doy la opcion de crear nuevas tablas).

En fin eso es todo, agradecería que si sabeis la respuesta no dudaseis en perder 2 minutos en decirmela. muchas gracias.
  #2 (permalink)  
Antiguo 02/11/2004, 17:09
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Pues creas un DataAdapter por cada tabla, y despues llenas el DataSet con cada DataAdapter.

Dim DA1 as OleDbDataAdapter = new OleDbDataAdapter("sentencia", conexion)
Dim DA2 as OleDbDataAdapter = new OleDbDataAdapter("sentencia", conexion)

DA1.fill(DataSet, "Tabla1")
DA2.fill(DataSet, "Tabla2")

Espero haberme explicado. Saludos.
__________________
Charlie.
  #3 (permalink)  
Antiguo 03/11/2004, 07:09
 
Fecha de Ingreso: octubre-2004
Mensajes: 211
Antigüedad: 19 años, 6 meses
Puntos: 2
Bueno eso sería si ya supiese que tablas nuevas y antiguas tengo en la base de datos, pero el problema es q no lo se, estoy de acuerdo contigo en que si supiese las tablas la forma que me as explicado valdría perfectamente, pero para lo que quiero hacer yo no.
Al final se me ha ocurrido que cuando cree una nueva tabla guardaré el nombre (y si tal tb los campos) de la tabla en en un fichero y asi al iniciar la aplicación ya se que tablas tengo en mi base de datos, por consiguiente relleno el dataset de la forma anteriormente dicha.

Gracias por todo.
  #4 (permalink)  
Antiguo 03/11/2004, 09:01
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Bueno, hay un post por ahí de como recuperar las tablas que hay en la BD, miralo, tiene muy buena pinta.
__________________
Charlie.
  #5 (permalink)  
Antiguo 03/11/2004, 09:16
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 19 años, 11 meses
Puntos: 6
Cita:
Iniciado por chcma
Pues creas un DataAdapter por cada tabla, y despues llenas el DataSet con cada DataAdapter.

Dim DA1 as OleDbDataAdapter = new OleDbDataAdapter("sentencia", conexion)
Dim DA2 as OleDbDataAdapter = new OleDbDataAdapter("sentencia", conexion)

DA1.fill(DataSet, "Tabla1")
DA2.fill(DataSet, "Tabla2")

Espero haberme explicado. Saludos.

Este... mmm... no necesitas crear 2 OleDbDataAdapter , puedes usar el mismo... ^_^


Saludos...
  #6 (permalink)  
Antiguo 31/01/2005, 18:11
 
Fecha de Ingreso: octubre-2003
Ubicación: Pucela
Mensajes: 182
Antigüedad: 20 años, 6 meses
Puntos: 0
Cita:
Iniciado por Stream
Este... mmm... no necesitas crear 2 OleDbDataAdapter , puedes usar el mismo... ^_^


Saludos...
¿Y como se ahce esto? Es decir como puedo cambiar mi consulta sql en el mismo Dataadapter
__________________
El pasado ya ha pasado y el futuro todavía no ha pasado, es decir, vive el presente.
  #7 (permalink)  
Antiguo 06/02/2005, 05:26
 
Fecha de Ingreso: octubre-2004
Mensajes: 211
Antigüedad: 19 años, 6 meses
Puntos: 2
En el dataAdapter tienes una propiedad para cambiar la consulta, en este caso el comando.
  #8 (permalink)  
Antiguo 07/02/2005, 09:36
 
Fecha de Ingreso: febrero-2005
Mensajes: 3
Antigüedad: 19 años, 2 meses
Puntos: 0
En el vinculo encontraras un ejemplo donde puede sacar toda la estructura de la base de datos, se especifica la tabla con sus respectivos campos

http://rof.webcindario.com/EjemplosVNet_7.htm

Espero que le sirva
  #9 (permalink)  
Antiguo 08/02/2005, 02:29
 
Fecha de Ingreso: octubre-2003
Ubicación: Pucela
Mensajes: 182
Antigüedad: 20 años, 6 meses
Puntos: 0
De todos los modos ya había encontrado en la ayuda de microsoft como hacerlo, pero esta página está bien. En todo caso gracias.
__________________
El pasado ya ha pasado y el futuro todavía no ha pasado, es decir, vive el presente.
  #10 (permalink)  
Antiguo 11/02/2005, 21:19
 
Fecha de Ingreso: febrero-2005
Mensajes: 3
Antigüedad: 19 años, 2 meses
Puntos: 0
Me gustaría saber como lo soluciono, si me puedes mandar un ejemplo al correo le agradezco mucho ([email protected]). wilder(R)
  #11 (permalink)  
Antiguo 12/02/2005, 09:29
Avatar de HenrydeSousa  
Fecha de Ingreso: septiembre-2004
Ubicación: Venezuela
Mensajes: 300
Antigüedad: 19 años, 7 meses
Puntos: 2
Entiendo que quieres cargar el nombre de cada una de las tablas de tu base de datos, correcto?
Si es así, creo que depende de que sgbd estas usando. Sé que con sql server tienes la tabla sysobjects.
Ahi tienes todas las tablas que has creado. Lo unico es que necesitas pasarle un filtro a tu sentencia
para que te devuelva las tablas que has creado tu. Bueno sé que por ahi va. Si estas con Access creo que
tendrias que tener un archivo donde guardes todas tus tablas tal y como lo dijiste.
  #12 (permalink)  
Antiguo 19/02/2005, 10:16
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Stream,

Si lo haces como tu dices, depues para actualizar los datos de una tabla u otra sería mucho más compliado, ¿No?

Por eso hago:

Dim DA1 as OleDbDataAdapter = new OleDbDataAdapter("sentencia", conexion)
Dim DA2 as OleDbDataAdapter = new OleDbDataAdapter("sentencia", conexion)

DA1.fill(DataSet, "Tabla1")
DA2.fill(DataSet, "Tabla2")

Asi, dependiendo de la tabla que quiera actualizar, hago DA1.update o DA2.update
__________________
Charlie.
  #13 (permalink)  
Antiguo 21/05/2012, 16:08
 
Fecha de Ingreso: agosto-2006
Mensajes: 2
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ¿Como llenar un dataset con todas las tablas de la BD?

Hola lo puedes llenar de la siguiente forma:

public void Llenar_DataSet() //Metodo que creara todas las centencias SQL de acuerdo a las tablas que halla seleccionado.
{
lblstatus.Text = "Procesando informacion ...";
//asignamos el valor del ProgressBar
Pbar.Maximum = dgtablas.RowCount - 1;
//creamos un ciclo para recorrer la tabla y saber que tablas hay que seleccionar
dataSet = new DataSet("BD");

for (int i = 0; i <= dgtablas.RowCount - 1; i++)
{
backgroundWorker1.ReportProgress(i);
if (Convert .ToBoolean (dgtablas.Rows[i].Cells[1].Value) == true)
{
//Lista_Querys += "select * from " + dgtablas.Rows[i].Cells[0].Value.ToString() + ",";

Query = "select * from " + dgtablas.Rows[i].Cells[0].Value.ToString();
SqlDataAdapter adaptador = new SqlDataAdapter();
adaptador .TableMappings .Add ("Table",dgtablas.Rows[i].Cells[0].Value.ToString());
conn = new SqlConnection(sCnn);
conn .Open();
SqlCommand command = new SqlCommand(Query,conn);
command.CommandType = CommandType.Text;
adaptador .SelectCommand =command ;
// Fill the DataSet.
adaptador.Fill(dataSet);
conn.Close();
//ya tenemos las tablas seleccionadas en un DatSet
}

}
lblstatus.Text = "Proceso Terminado";
}

en este metodo se ejecuta un for el cual recorre un grid en el cual esta la lista de tablas de una determinada BD y de las cuales el usuario selecciono una o todas las tablas de la BD.

Espero les sirva si necesitan el código fuente de la aplicación mandar correo a [email protected]
  #14 (permalink)  
Antiguo 21/05/2012, 16:11
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: ¿Como llenar un dataset con todas las tablas de la BD?

Hola Jonathan_242, no tiene caso responder a un post de hace 8 años... Por favor verifica la fecha antes de responder. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:24.