Objeto SqlDataAdapter
INTEGRANTES:
MORI ROJAS, José Manuel
REGALADO JUAPE, Thalía
DEFINICIÓN:
Representa un conjunto de comandos de datos y una conexión de base de datos que
se utilizan para rellenar un DataSet y actualizar una base de datos de SQL Server. Esta
clase no se puede heredar. SqlDataAdapter, Se utiliza como un puente entre DataSet y
SQL Server para recuperar y guardar datos. SqlDataAdapter proporciona este puente
mediante la asignación de Fill, que cambia los datos en DataSet para que coincidan
con los datos del origen de datos; y Update, que cambia los datos en el origen de
datos para que coincidan con los datos en DataSet utilizando las instrucciones de
Transact-SQL en el origen de datos adecuado.
EN QUE CASOS SE DEBE USAR UN
SqlDataAdapter:
Con el SqlDataAdapter se puede hacer una consulta general y se utiliza si requieres
ejecutar más de un tipo de sentencia Sql o si trabajarás en escenarios
desconectados.
 DbDataAdapter.Fill. Rellena un objeto DataSet o un objeto DataTable.
 DbDataAdapter.Update. Llama a las instrucciones INSERT, UPDATE o DELETE
respectivas para cada fila insertada, actualizada o eliminada en DataSet.
 Transact SQL .Es el lenguaje de programación que proporciona SQL Server para
ampliar SQL con los elementos característicos de los lenguajes de programación:
variables, sentencias de control de flujo.
COMO CREAR UN OBJETO DataAdapter:
PROPIEDADES:
TENEMOS DIFERENTES PROPIEDADES PARA PODER
PROGRAMAR:
AcceptChangesDuringFill, AcceptChangesDuringUpdate,
Container, ContinueUpdateOnError, DeleteCommand,
FillCommandBehavior, FillLoadOption, InsertCommand,
MissingMappingAction, MissingSchemaAction,
MissingSchemaAction, ReturnProviderSpecificTypes,
SelectCommand, Site, TableMappings, UpdateBatchSize,
UpdateCommand.
MÉTODOS:
TENEMOS DIFERENTES MÉTODOS PARA PODER PROGRAMAR:
CreateObjRef(Type), Dispose(), Equals(Object), Fill(DataSet),
Fill(DataSet, Int32, Int32, String), Fill(DataSet, String),
Fill(DataTable), Fill(Int32, Int32, DataTable()), FillSchema(DataSet,
SchemaType), FillSchema(DataSet, SchemaType, String),
FillSchema(DataTable, SchemaType), GetFillParameters(),
GetHashCode(), GetLifetimeService(), GetType(),
InitializeLifetimeService(), ResetFillLoadOption(),
ShouldSerializeAcceptChangesDuringFill(),
ShouldSerializeFillLoadOption(), ToString(), Update(DataRow()),
Update(DataSet), Update(DataSet, String), Update(DataTable).
EJEMPLO:
En el ejemplo siguiente se usa el SqlCommand, SqlDataAdapter, y SqlConnection para seleccionar los
registros de una base de datos y rellenar una DataSet con las filas seleccionadas.
Public Function SelectRows( _
ByVal dataSet As DataSet, ByVal connectionString As
String, _
ByVal queryString As String) As DataSet
Using connection As New SqlConnection(connectionString)
Dim adapter As New SqlDataAdapter()
adapter.SelectCommand = New SqlCommand( _
queryString, connection)
adapter.Fill(dataSet)
Return dataSet
End Using
End Function
RESUMEN
El objeto DataAdapter se puede utilizar con el objeto DataSet para cargar los datos de
una fuente de datos y puede desconectarse de la misma. El usuario puede entonces
utilizar y manipular los datos. Cuando los datos necesitan ser actualizados contra la
fuente de datos, se utiliza un objeto DataAdapter para volver a conectarse y actualizar
la fuente de datos. El objeto DataSet representa una copia local de datos de una
fuente de datos. Cuando se utiliza sin una fuente de datos, el objeto DataSet resulta
útil para guardar datos locales a los cuales pueden acceder los formularios Web
Forms.
Sin embargo, para actuar como una herramienta de gestión de datos real, un objeto
DataSet debe poder interactuar con una o más fuentes de datos. Para conseguir esta
interacción, el .NET Framework proporciona las clases SqlDataAdapter y
OleDbDataAdapter.
RECOMENDACIONES
 Si se va a utilizar procedimientos almacenados de SQL Server para editar o eliminar
datos con DataAdapter, asegúrese de que no utiliza SET NOCOUNT ON en la
definición del procedimiento almacenado. Esto hace que el recuento de filas
afectadas vuelva a cero, lo que DataAdapter interpreta como un conflicto de
simultaneidad.
 Una InvalidOperationException se producirá si el Fill se llama al método y la tabla
contiene un tipo definido por el usuario que no está disponible en el equipo
cliente.
 El SqlDataAdapter se utiliza junto con SqlConnection y SqlCommand para
aumentar el rendimiento al conectarse a una base de datos de SQL Server.
CONCLUSIONES
 El SqlDataAdapter, actúa como puente entre un DataSet y SQL Server para
recuperar y guardar datos y proporciona este puente mediante la asignación
de Fill, que cambia los datos en el DataSet coincidan con los datos del origen de
datos, y Update, que cambia los datos del origen de datos coincidan con los datos
en el DataSet, mediante las instrucciones de Transact-SQL adecuadas en el origen
de datos.
 La actualización se realiza por fila. Para cada fila insertada, modificada y eliminada,
el Update método determina el tipo de cambio que se ha realizado en ella
(Insert,Update, o Delete). Según el tipo de cambio que se haya ejecutado,
el Insert, Update, o Delete plantilla del comando se ejecuta para propagar la fila
modificada al origen de datos.
 Cuando el SqlDataAdapter rellena un DataSet, crea las tablas y columnas
necesarias para los datos devueltos si todavía no existen.
Objeto SqlDataAdapter

Objeto SqlDataAdapter

  • 1.
    Objeto SqlDataAdapter INTEGRANTES: MORI ROJAS,José Manuel REGALADO JUAPE, Thalía
  • 2.
    DEFINICIÓN: Representa un conjuntode comandos de datos y una conexión de base de datos que se utilizan para rellenar un DataSet y actualizar una base de datos de SQL Server. Esta clase no se puede heredar. SqlDataAdapter, Se utiliza como un puente entre DataSet y SQL Server para recuperar y guardar datos. SqlDataAdapter proporciona este puente mediante la asignación de Fill, que cambia los datos en DataSet para que coincidan con los datos del origen de datos; y Update, que cambia los datos en el origen de datos para que coincidan con los datos en DataSet utilizando las instrucciones de Transact-SQL en el origen de datos adecuado.
  • 3.
    EN QUE CASOSSE DEBE USAR UN SqlDataAdapter: Con el SqlDataAdapter se puede hacer una consulta general y se utiliza si requieres ejecutar más de un tipo de sentencia Sql o si trabajarás en escenarios desconectados.  DbDataAdapter.Fill. Rellena un objeto DataSet o un objeto DataTable.  DbDataAdapter.Update. Llama a las instrucciones INSERT, UPDATE o DELETE respectivas para cada fila insertada, actualizada o eliminada en DataSet.  Transact SQL .Es el lenguaje de programación que proporciona SQL Server para ampliar SQL con los elementos característicos de los lenguajes de programación: variables, sentencias de control de flujo.
  • 4.
    COMO CREAR UNOBJETO DataAdapter:
  • 5.
    PROPIEDADES: TENEMOS DIFERENTES PROPIEDADESPARA PODER PROGRAMAR: AcceptChangesDuringFill, AcceptChangesDuringUpdate, Container, ContinueUpdateOnError, DeleteCommand, FillCommandBehavior, FillLoadOption, InsertCommand, MissingMappingAction, MissingSchemaAction, MissingSchemaAction, ReturnProviderSpecificTypes, SelectCommand, Site, TableMappings, UpdateBatchSize, UpdateCommand.
  • 6.
    MÉTODOS: TENEMOS DIFERENTES MÉTODOSPARA PODER PROGRAMAR: CreateObjRef(Type), Dispose(), Equals(Object), Fill(DataSet), Fill(DataSet, Int32, Int32, String), Fill(DataSet, String), Fill(DataTable), Fill(Int32, Int32, DataTable()), FillSchema(DataSet, SchemaType), FillSchema(DataSet, SchemaType, String), FillSchema(DataTable, SchemaType), GetFillParameters(), GetHashCode(), GetLifetimeService(), GetType(), InitializeLifetimeService(), ResetFillLoadOption(), ShouldSerializeAcceptChangesDuringFill(), ShouldSerializeFillLoadOption(), ToString(), Update(DataRow()), Update(DataSet), Update(DataSet, String), Update(DataTable).
  • 7.
    EJEMPLO: En el ejemplosiguiente se usa el SqlCommand, SqlDataAdapter, y SqlConnection para seleccionar los registros de una base de datos y rellenar una DataSet con las filas seleccionadas. Public Function SelectRows( _ ByVal dataSet As DataSet, ByVal connectionString As String, _ ByVal queryString As String) As DataSet Using connection As New SqlConnection(connectionString) Dim adapter As New SqlDataAdapter() adapter.SelectCommand = New SqlCommand( _ queryString, connection) adapter.Fill(dataSet) Return dataSet End Using End Function
  • 8.
    RESUMEN El objeto DataAdapterse puede utilizar con el objeto DataSet para cargar los datos de una fuente de datos y puede desconectarse de la misma. El usuario puede entonces utilizar y manipular los datos. Cuando los datos necesitan ser actualizados contra la fuente de datos, se utiliza un objeto DataAdapter para volver a conectarse y actualizar la fuente de datos. El objeto DataSet representa una copia local de datos de una fuente de datos. Cuando se utiliza sin una fuente de datos, el objeto DataSet resulta útil para guardar datos locales a los cuales pueden acceder los formularios Web Forms. Sin embargo, para actuar como una herramienta de gestión de datos real, un objeto DataSet debe poder interactuar con una o más fuentes de datos. Para conseguir esta interacción, el .NET Framework proporciona las clases SqlDataAdapter y OleDbDataAdapter.
  • 9.
    RECOMENDACIONES  Si seva a utilizar procedimientos almacenados de SQL Server para editar o eliminar datos con DataAdapter, asegúrese de que no utiliza SET NOCOUNT ON en la definición del procedimiento almacenado. Esto hace que el recuento de filas afectadas vuelva a cero, lo que DataAdapter interpreta como un conflicto de simultaneidad.  Una InvalidOperationException se producirá si el Fill se llama al método y la tabla contiene un tipo definido por el usuario que no está disponible en el equipo cliente.  El SqlDataAdapter se utiliza junto con SqlConnection y SqlCommand para aumentar el rendimiento al conectarse a una base de datos de SQL Server.
  • 10.
    CONCLUSIONES  El SqlDataAdapter,actúa como puente entre un DataSet y SQL Server para recuperar y guardar datos y proporciona este puente mediante la asignación de Fill, que cambia los datos en el DataSet coincidan con los datos del origen de datos, y Update, que cambia los datos del origen de datos coincidan con los datos en el DataSet, mediante las instrucciones de Transact-SQL adecuadas en el origen de datos.  La actualización se realiza por fila. Para cada fila insertada, modificada y eliminada, el Update método determina el tipo de cambio que se ha realizado en ella (Insert,Update, o Delete). Según el tipo de cambio que se haya ejecutado, el Insert, Update, o Delete plantilla del comando se ejecuta para propagar la fila modificada al origen de datos.  Cuando el SqlDataAdapter rellena un DataSet, crea las tablas y columnas necesarias para los datos devueltos si todavía no existen.