Acceso a Datos

23/03/2006 - 10:48 por oskar | Informe spam
Hola a todos !!
Bueno... ya he relizado varias chapuzillas con c# para aprender como
funciona por encima ...
Pero ahora tengo que empezar un proyecto nuevo de verdad.
Tengo una base de datos oracles con unas 100 tablas interrelacionadas
sin contrains.
La aplicación primera que tengo que hacer es de consulta nada
complicado.
Pero me gustaria una arquitecura flexible para poder hacer las
consultas de todo tipo, es decir, ahora tengo que consultar 2 tablas
A,B
Creo una Conexion a la base de datos. Creo un adaptador con la consulta
que quiero hacer, entonces creo el dataset de la consulta i hago un
metodo para llenar los datos en el dataset.
Pero claro. Lo que yo quiero no quiero es cada vez que tengo que hacer
un programita que es mostrar el resultado de una consulta por pantalla
crear un dataadapter con la sentencia .. el dataset pq tiende el
INFINITO mi modulo de acceso a datos.
Lo que me gustaria es crear alguna forma un DataSet global con todas
las Tablas de la base de datos, sin relacionar estas tablas. Entonces
desde programa que diga quiero hacer una consulta sobre las tablas
A,C,J con el where A.x=C.x and J.p=A.p ordernado como quiero.
Asi desde programa podria hacer tantas consultas como me plazca sin
tener que ir creando datasets cada vez.
Como lo veis ?
Gracias.
 

Leer las respuestas

#1 Alberto Poblacion
23/03/2006 - 12:32 | Informe spam
Una cosa que podrías hacer: Utiliza datasets SIN TIPO ( DataSet ds = new
DataSet() ). En cada momento, le asignas al CommnadText del SelectCommand de
un único DataAdapter la consulta que quieras (metiéndole en la Select el
Join de las tablas que te interesen), y con este dataadapter haces un fill
del dataset, con lo que te lo configura sobre la marcha para contener los
resultados de la consulta que has metido en el dataadapter. Ese dataset lo
puedes vincular a un datagrid, y te saca los resultados sin problema, lo
único que pasa es que las columnas del grid solo las ves en tiempo de
ejecución y no en tiempo de diseño.

Preguntas similares