Funcionalidades avanzadas del DataSet (Acceso a Datos)

01/10/2003 - 09:38 por enrique | Informe spam
Estimados señoras y señores.

Tengo una serie de dudas respecto a DataSet.

Quisiera saber si es posible tener algo parecido alos
EJBs de J2EE (Java), es decir, que exista algo de
generación de código automáticamente (solo indicas el
nombre de los campos y tipos y genera ya sentencias
SQL ), y que sea todo de una manera sencilla.

Creo, que el DataSet está dentro de lo que se llama "modo
desconectado" y quisiera saber qué más ventajas tiene
esta forma de actuar.
También hay un objeto CommandBuilder, pero no sé
exactamente cómo funciona.

Mi objetivo es saber cómo aprovechar al máximo las
características del DataSet para obtener el máximo
rendimiento cuando se accedan a datos de la BBDD y se
trabaje con ellos (capa de lógica de negocio) y después
se actualicen los datos (updates, deletes, insert) de una
manera también eficiente.

Muchísimas gracias.
 

Leer las respuestas

#1 Coatl
02/10/2003 - 18:56 | Informe spam
Enrique,

Aunque de hecho un EJB de J2EE es algo mucho más avanzado a eso que
mencionas, pensando en un Bean de entidad, no hay un equivalente dentro de
la plataforma .NET


Alberto Borbolla
Microsoft MVP
WebLog:
http://www.coatl.com


"Esteban Felipe" wrote in message
news:00d301c38830$6f1990a0$
Hola enrique.

La clase System.Data.SqlClient.SqlCommandBuilder hace
algo parecido a lo que tu quieres. A partir de un
comando "Select", esta clase genera los comandos para
INSERT, UPDATE y DELETE. La restriccion que tiene es que
funciona con una unica tabla.

Puedes pensar en el DataSet como una BD en memoria. El
dataset es un cojunto de tablas, relacionadas o no, que
no necesariamente tienen que corresponder a la estructura
de tablas del manejador de base de datos. De hecho tu
dataset puede contener tablas cuyos valores provienen de
distintos sitios (varias bases de datos, un xml, entrada
de usuario, un archivo de texto, etc.). Las
posibilidades que tienes con el dataset son casi
ilimitadas, y definitivamente demasiadas para tratar de
nombrarlas aqui. Una buen punto de partida para que
aprendas sobre los datasets es
http://msdn.microsoft.com/library/default.asp?
url=/library/en-us/vbcon/html/vbcondatasets.asp

Ahora si lo que tu buscas es rendimiento, la forma mas
efectiva sigue siendo utilizar DataReaders y stored
procedures para accesar y modificar la data. Todo es
cuestion de que busques el balance entre funcionalidad y
rendimiento donde te sientas comodo. Personalmente
acostumbro utilizar SqlDataAdapters con la propiedad
sqlCommand seteada para utilizar un stored procedures
para llenar la(s) tabla(s) en el dataset. Luego los
cambios a las base de datos los hago manualmente
utilizando sqlcommands y stored procedures. De esa forma
aprovecho gran parte de las facilidades del dataset sin
sacrificar mucho rendimiento, con excepcion del hecho de
tener que utilizar memoria para mantener el dataset.

Esteban Felipe
MCDS(.net) & MCDBA(sql2k)
Estimados señoras y señores.

Tengo una serie de dudas respecto a DataSet.

Quisiera saber si es posible tener algo parecido alos
EJBs de J2EE (Java), es decir, que exista algo de
generación de código automáticamente (solo indicas el
nombre de los campos y tipos y genera ya sentencias
SQL ), y que sea todo de una manera sencilla.

Creo, que el DataSet está dentro de lo que se


llama "modo
desconectado" y quisiera saber qué más ventajas tiene
esta forma de actuar.
También hay un objeto CommandBuilder, pero no sé
exactamente cómo funciona.

Mi objetivo es saber cómo aprovechar al máximo las
características del DataSet para obtener el máximo
rendimiento cuando se accedan a datos de la BBDD y se
trabaje con ellos (capa de lógica de negocio) y después
se actualicen los datos (updates, deletes, insert) de


una
manera también eficiente.

Muchísimas gracias.


.

Preguntas similares