Información General Sobre TableAdapters
Información General Sobre TableAdapters
Información General Sobre TableAdapters
http://msdn.microsoft.com/es-es/library/bz9tthwx(VS.90).aspx
Actualizacin: noviembre 2007 Los TableAdapters comunican la aplicacin con una base de datos. Ms especficamente, un TableAdapter se conecta con una base de datos, ejecuta consultas o procedimientos almacenados, y devuelve una nueva tabla de datos rellena con los datos devueltos o rellena una DataTable existente con los datos devueltos. Los TableAdapters tambin se utilizan para devolver los datos actualizados desde la aplicacin a la base de datos. Los usuarios de versiones anteriores de Visual Studio pueden pensar en un TableAdapter como un DataAdapter que lleva integrado un objeto de conexin y la capacidad de contener varias consultas. Cada consulta agregada a un TableAdapter se expone como un mtodo pblico al que se llama simplemente como a cualquier otro mtodo o funcin de un objeto. Adems de la funcionalidad estndar del control DataAdapter, los objetos TableAdapter proporcionan mtodos con tipo adicionales que encapsulan consultas que comparten un esquema comn con el control DataTable con tipo asociado. Dicho de otra forma, puede tener tantas consultas como desee en un TableAdapter, siempre y cuando devuelvan datos que cumplan el mismo esquema. En la versin anterior de Visual Studio, se utilizaron Adaptadores de datos ADO.NET para comunicar una aplicacin con una base de datos. Aunque los adaptadores de datos siguen siendo un componente principal de .Proveedores de datos de .NET Framework (ADO.NET), los objetos TableAdapter son componentes generados por el diseador que mejoran la funcionalidad de los controles DataAdapter. Estos objetos suelen contener los mtodos Fill y Update para obtener y actualizar los datos en una base de datos. Los TableAdapter se crean con el Diseador de DataSet dentro de los conjuntos de datos con establecimiento inflexible de tipos. Con Asistente para la configuracin de orgenes de datos puede crear objetos TableAdapter durante la creacin de un nuevo conjunto de datos. Tambin puede crearlos en conjuntos de datos existentes con el Asistente para la configuracin de TableAdapter o arrastrando los objetos de base de datos del Explorador de servidores al Diseador de DataSet. Para obtener ms informacin, vea Cmo: Crear TableAdapters. Aunque los objetos TableAdapter se disean con el Diseador de DataSet, las clases TableAdapter generadas no se generan como clases anidadas de DataSet. Se encuentran en un espacio de nombres separado y especfico para cada conjunto de datos. Por ejemplo, si tiene un conjunto de datos denominado NorthwindDataSet, los TableAdapter asociados al control DataTable en NorthwindDataSet estaran en el espacio de nombres NorthwindDataSetTableAdapters. Para tener acceso a un TableAdapter determinado mediante programacin, debe declarar una nueva instancia del TableAdapter. Por ejemplo: VB Dim northwindDataSet As New NorthwindDataSet() Dim customersTableAdapter As New NorthwindDataSetTableAdapters.CustomersTableAdapter() customersTableAdapter.Fill(northwindDataSet.Customers)
1 de 5
02/12/2010 10:16
http://msdn.microsoft.com/es-es/library/bz9tthwx(VS.90).aspx
TableAdapter se refleja en el esquema de la tabla de datos asociada. Por ejemplo, al quitar una columna de la consulta principal, se quita la columna de la tabla de datos asociada. Si alguna consulta adicional del TableAdapter utiliza instrucciones SQL que devuelven columnas que no estn en la consulta principal, el diseador intentar sincronizar los cambios de columna entre la consulta principal y cualquier consulta adicional. Para obtener ms informacin, vea Cmo: Editar TableAdapters.
Consultas de TableAdapter
A diferencia de los adaptadores de datos estndar, los TableAdapter pueden contener varias consultas que rellenan las tablas de datos asociadas. Puede definir tantas consultas para un TableAdapter como requiera la aplicacin, con tal de que cada consulta devuelva datos que cumplan el mismo esquema que la tabla de datos asociada. De esta forma se habilita la carga de datos que satisface distintos criterios. Por ejemplo, si la aplicacin contiene una tabla de clientes, puede crear una consulta para rellenar la tabla con todos los clientes cuyo nombre comience con una letra determinada y otra consulta para rellenar la tabla con todos los clientes del mismo estado o provincia. Para rellenar una tabla Customers con clientes de un estado concreto, puede crear una consulta FillByState que toma un parmetro para el valor del estado: SELECT * FROM Customers WHERE State = @State. Ejecute la consulta llamando al mtodo FillByState y pasando un valor del parmetro como: CustomerTableAdapter.FillByState("WA"). Para obtener ms informacin, vea Cmo: Crear consultas de TableAdapter.
2 de 5
02/12/2010 10:16
http://msdn.microsoft.com/es-es/library/bz9tthwx(VS.90).aspx
Adems de consultas que devuelven datos del mismo esquema como tabla de datos del TableAdapter, tambin puede agregar consultas que devuelvan valores escalares (nicos). Por ejemplo, la creacin de una consulta que devuelve un recuento de clientes (SELECT Count(*) From Customers) es una consulta vlida para CustomersTableAdapter, aunque los datos devueltos no cumplan el esquema de la tabla.
Propiedad ClearBeforeFill
El objeto TableAdapter agrega una propiedad no disponible en la clase base DataAdapter. De manera predeterminada, cada vez que ejecuta una consulta para rellenar la tabla de datos del TableAdapter, se borran los datos y slo se cargan en la tabla los resultados de la consulta. Establezca la propiedad ClearBeforeFill del TableAdapter en false si desea agregar o combinar los datos devueltos de una consulta con los datos existentes en una tabla de datos. Sin tener en cuenta si borra los datos, es necesario enviar explcitamente las actualizaciones a la base de datos, si lo desea. Por tanto, recuerde guardar los cambios realizados en los datos de la tabla antes de ejecutar otra consulta que rellene la tabla. Para obtener ms informacin, vea Cmo: Actualizar datos utilizando un TableAdapter.
Herencia de TableAdapter
Los TableAdapter amplan la funcionalidad de los adaptadores de datos estndar encapsulando un control DataAdapter. De manera predeterminada, el objeto TableAdapter hereda de Component y no se puede convertir a la clase DataAdapter. Convertir un TableAdapter a un control DataAdapter produce un InvalidCastException. Para cambiar la clase base de un TableAdapter, en el Diseador de DataSet se escribe una clase que derive de Component en la propiedad Base Class del TableAdapter.
Miembro
Descripcin
TableAdapter.Fill
Rellena la tabla de datos asociada del TableAdapter con los resultados del comando SELECT del TableAdapter. Para obtener ms informacin, vea Cmo: Llenar un conjunto de datos con datos.
TableAdapter.Update
Enva los cambios de vuelta a la base de datos y devuelve un entero que representa el nmero de filas a las que afecta la actualizacin. Para obtener ms informacin, vea Cmo: Actualizar datos utilizando un TableAdapter.
TableAdapter.GetData
3 de 5
02/12/2010 10:16
http://msdn.microsoft.com/es-es/library/bz9tthwx(VS.90).aspx
TableAdapter.Insert
Crea una nueva fila en la tabla de datos. Para obtener ms informacin, vea Cmo: Agregar filas a un DataTable.
TableAdapter.ClearBeforeFill Determina si se vaca una tabla de datos antes de llamar a uno de los mtodos Fill.
Nota:
Si hay bastante informacin en la consulta principal, se crean los comandos InsertCommand, UpdateCommand y DeleteCommand de manera predeterminada cuando se genera el TableAdapter. Si la consulta principal de TableAdapter es ms que una instruccin SELECT de una nica tabla, es posible que el diseador no pueda generar los comandos InsertCommand, UpdateCommand y DeleteCommand. Si no se han generado estos comandos, puede recibir un error al ejecutar el mtodo TableAdapter.Update.
TableAdapter GenerateDbDirectMethods
Adems de con los comandos InsertCommand, UpdateCommand y DeleteCommand, los TableAdapters se crean con mtodos que se pueden ejecutar directamente en la base de datos. Se puede llamar a estos mtodos (TableAdapter.Insert, TableAdapter.Update y TableAdapter.Delete) para manipular los datos directamente en la base de datos. Si no desea crear estos mtodos directos, establezca la propiedad GenerateDbDirectMethods del TableAdapter en false (en la ventana Propiedades). Las consultas adicionales agregadas al objeto TableAdapter son consultas independientes y no generan estos mtodos.
Compatibilidad del objeto TableAdapter con los tipos que aceptan valores NULL
Los TableAdapters admiten tipos que aceptan valores NULL Nullable(Of T) y T?. Para obtener ms informacin sobre los tipos que aceptan valores NULL, vea Tipos de valor que aceptan valores NULL. Para obtener ms informacin sobre los tipos que aceptan valores NULL en C#, vea Utilizar tipos que aceptan valores NULL (Gua de programacin de C#).
Vea tambin
Tareas
4 de 5
02/12/2010 10:16
http://msdn.microsoft.com/es-es/library/bz9tthwx(VS.90).aspx
Cmo: Conectarse a los datos de una base de datos Tutorial: Conexin a los datos de una base de datos Conceptos Lo nuevo en datos Otros recursos Tutoriales sobre datos Preparar la aplicacin para recibir datos Buscar datos en la aplicacin Mostrar datos en formularios en aplicaciones para Windows Modificar datos en la aplicacin Validar datos Guardar datos
Contenido de la comunidad
5 de 5
02/12/2010 10:16