domingo, 20 de mayo de 2018

OLE BD



























OLE DB

1.     Contenido

o   Definición

OLE DB (algunas veces escrito como OLEDB u OLE-DB) es la sigla de Object Linking and Embedding for Databases ("Enlace e incrustación de objetos para bases de datos") y es una tecnología desarrollada por Microsoft usada para tener acceso a diferentes fuentes de información, o bases de datos, de manera uniforme.

o   Arquitectura

OLE DB permite separar los datos de la aplicación que los requiere. Esto se hizo así ya que diferentes aplicaciones requieren acceso a diferentes tipos y almacenes de datos, y no necesariamente desean conocer cómo tener acceso a cierta funcionalidad con métodos de tecnologías específicas. OLE DB está conceptualmente dividido en consumidores y proveedores; el consumidor es la aplicación que requiere acceso a los datos y el proveedor es el componente de software que expone una interfaz OLE DB a través del uso del Component Object Model (COM)

o   DataSet

Un conjunto de datos (conocido también por el anglicismo: dataset, comúnmente utilizado en algunos países hispanohablantes) es una colección de datos habitualmente tabulada.
En general y en su versión más simple, un conjunto de datos corresponde a los contenidos de una única tabla de base de datos o una única matriz de datos estadística, donde cada columna de la tabla representa una variable en particular, y cada fila representa a un miembro determinado del conjunto de datos en cuestión.
Un conjunto de datos contiene los valores para cada una de las variables, como por ejemplo la altura y el peso de un objeto, que corresponden a cada miembro del conjunto de datos. Cada uno de estos valores se conoce con el nombre de dato. El conjunto de datos puede incluir datos para uno o más miembros en función de su número de filas.
Conjuntos de datos tan grandes que aplicaciones tradicionales de procesamiento de datos no los pueden tratar se llaman big data.

o   Clases de OLE DB

Clases de sesión

CDataConnection
Administra la conexión con el origen de datos. Esta es una clase útil para crear clientes porque encapsula objetos necesarios (origen de datos y sesión) y algunos de trabajo necesario al conectarse a un origen de datos.
CDataSource
Corresponde al origen de datos OLE DB un objeto, que representa una conexión a través de un proveedor a un origen de datos. Una o varias sesiones de base de datos, cada representada por un objeto de CSession , pueden tener lugar en una sola conexión.
CEnumerator
Corresponde al enumerador OLE DB un objeto, que recupera información del conjunto de filas sobre orígenes de datos disponibles.
CEnumeratorAccessor
Utilizado por CEnumerator para tener acceso a los datos del conjunto de filas de enumeradores.
CSession
Representa una sesión única de acceso a la base de datos. Una o más sesiones pueden estar asociadas a cada objeto de CDataSource .






Clases de descriptores de acceso

CAccessor
Se utiliza para los registros que están enlazados estáticamente a un origen de datos.
CAccessorBase
Clase base para todas las clases de descriptor de acceso.
CDynamicAccessor
Un descriptor de acceso que puede crear en tiempo de ejecución, basándose en la información de columna del conjunto de filas.
CDynamicParameterAccessor
Un descriptor de acceso que se puede utilizar cuando los tipos de comando son desconocidos. Obtiene la información de parámetros llamando a la interfaz de ICommandWithParameters , si el proveedor admite la interfaz.
CDynamicStringAccessor
Permite obtener acceso a un origen de datos cuando no tiene conocimiento de la estructura subyacente de la base de datos.
CDynamicStringAccessorA
Similar a CDynamicStringAccessor salvo que esta clase solicita el primero del almacén de datos como datos de cadena ANSI.
CDynamicStringAccessorW
Similar a CDynamicStringAccessor salvo que esta clase solicita el primero del almacén de datos como datos de cadena Unicode.
CManualAccessor
Un descriptor de acceso con los métodos para administrar columnas y parámetros de comando.
CNoAccessor
Se puede utilizar como argumento de plantilla cuando no desea la clase para admitir parámetros o generar columnas.
CXMLAccessor
Similar a CDynamicStringAccessor salvo que esta clase convierte todos los datos acceso de almacén como datos (etiquetados) XML- con formato.

Clases de conjuntos de filas


CAccessorRowset
Encapsula un conjunto de filas y sus descriptores de acceso asociados.
CArrayRowset
Se utiliza para tener acceso a elementos de un conjunto de filas mediante sintaxis de matriz.
CBulkRowset
Se utiliza para capturar y manipular filas de forma masiva recuperar múltiples identificadores de fila con una única llamada.
CNoRowset
Se puede utilizar como argumento de plantilla si el comando no devuelve un conjunto de filas.
CRestrictions
Se utiliza para especificar las restricciones de conjuntos de filas de esquema.
CRowset
Se utiliza para manipular, para establecer, y recuperar datos del conjunto de filas.
CStreamRowset
Devuelve un objeto de ISequentialStream en lugar de un conjunto de filas; se utiliza el método de  lectura para recuperar datos en formato XML. (SQL Server 2000 hace que el formato; observe que esta característica sólo funciona con SQL Server 2000.)
IRowsetNotifyImpl
Proporciona una implementación ficticia para IRowsetNotify, con las funciones vacías para los métodos OnFieldChange, OnRowChangey OnRowsetChangede IRowsetNotify .
Las plantillas OLE DB proporcionan un conjunto de clases que corresponden a OLE DB conjuntos de filas de esquema.

Clases de comando

CCommand
Se utiliza para establecer y ejecutar un comando parámetro- basado en OLE DB. Para abrir simplemente un conjunto de filas, utilice CTable en su lugar.
CMultipleResults
Usa como argumento de plantilla para la plantilla de CCommand cuando desee que el comando de controlar varios conjuntos de resultados.
CNoAccessor
Usa como argumento de plantilla para las clases de plantilla, como CCommand y CTable, que toman un argumento de la clase de descriptor de acceso. Utilice CNoAccessor si no desea que la clase para admitir parámetros o generar columnas.
CNoMultipleResults
Usa como argumento de plantilla para la plantilla de CCommand cuando desee que el comando de controlar un único conjunto de filas.CNoMultipleResults es el valor predeterminado para el argumento de plantilla.
CNoRowset
Usa como argumento de plantilla para CCommand o CTable si el comando o la tabla no devuelven un conjunto de filas.
CTable
Se utiliza para tener acceso a un conjunto de filas sin parámetros.

Clases de propiedad

CDBPropIDSet
Utilizado para pasar una matriz de los id. de propiedad para los que el consumidor desea información de la propiedad. Las propiedades pertenecen a un conjunto de propiedades.
CDBPropSet
Se utiliza para establecer las propiedades de un proveedor.

Clase de marcador

CBookmark
Utilizado como índice para tener acceso a los datos de un conjunto de filas.

Tipo de error

CDBErrorInfo
Se utiliza para recuperar la información de error de OLE DB.

o   Ejemplos

·         Ejemplo 1

Imports System.Data.OleDb

Module Modulo
    Public Cnx As New OleDb.OleDbConnection

    Sub ConectaBD()
        With Cnx
            .ConnectionString = "Provider=SQLOLEDB;Data Source=(local);Initial Catalog = BDBotica;Integrated Security=SSPI"
            .Open()
        End With
    End Sub

    Sub DesconectaBD()
        If Cnx.State = ConnectionState.Open Then Cnx.Close()
    End Sub

End Module

·         Ejemplo 2

Sub Buscar()
        Dim Dato As String = Me.TxtDato.Text
        Dim Dt As OleDbDataAdapter
        Dim Tb As New DataTable
        Dim Sql As String
        Sql = "SELECT * FROM Cargo WHERE codcargo='" & Dato & "'"
        Dt = New OleDbDataAdapter(Sql, Cnx)
        Dt.Fill(Tb)
        If Tb.Rows.Count > 0 Then
            Me.DGVCargo.DataSource = Tb
        Else
            LlenarGrid()
        End If
    End Sub

·         Ejemplo 3

Sub LlenarGrid()
        Dim Dt As OleDbDataAdapter
        Dim Tb As New DataSet
        Dim sql As String = "SELECT * FROM Cargo"
        Dt = New OleDbDataAdapter(sql, Cnx)
        Dt.Fill(Tb, "Car")
        Me.DGVCargo.DataSource = Tb
        Me.DGVCargo.DataMember = "Car"

    End Sub



2.     Resumen

OLE DB es la interfaz de programa de aplicaciones estratégica (API) de bajo nivel de Microsoft para acceder a diferentes fuentes de datos. OLE DB incluye no solo las capacidades de lenguaje estructurado de consulta (SQL) de la interfaz de datos estándar patrocinada por Microsoft Open Database Connectivity (ODBC), sino que también incluye el acceso a datos que no son SQL.
Es un conjunto de interfaces COM que exponen datos de una variedad de fuentes, como hojas de cálculo, planes de proyecto, SQL, bases de datos heredadas y más. Las interfaces OLE DB proporcionan a las aplicaciones un acceso uniforme a los datos almacenados en diversas fuentes de información o almacenes de datos. Estas interfaces admiten la cantidad de funcionalidad del sistema de gestión de bases de datos (DBMS) adecuada para el almacén de datos, lo que le permite compartir sus datos.

3.     Summary

OLE DB is Microsoft's low-level strategic application program (API) interface to access different data sources. OLE DB includes not only the structured query (SQL) capabilities of the standard data interface sponsored by Microsoft Open Database Connectivity (ODBC), but also includes access to non-SQL data.
It is a set of COM interfaces that expose data from a variety of sources, such as spreadsheets, project plans, SQL, legacy databases, and more. OLE DB interfaces provide applications with uniform access to data stored in various information sources or data warehouses. These interfaces support the amount of database management system (DBMS) functionality suitable for the data warehouse, allowing you to share your data.

4.     Recomendaciones

o   Estudiar bien la clase OLE DB para que a la hora de la práctica se nos haga más fácil su ejecución.
o    Les recomendamos a seguir indagando un poco más acerca de OLE DB para que le puedan sacar todo el provecho posible a esta librería.

5.     Conclusiones

o   Es una librería muy útil a la que podemos recurrir siempre para por ejemplo hacer una conexión con la base de datos.
o   Son fáciles de usar, ya que solo las tenemos que importar.
o   OLE DB es eficiente a la hora de la programar con conexión a una base de datos.

6.     Apreciación del equipo

Bueno para nosotros nos ha parecido una librería muy útil a la hora de programar  con bases de datos y es muy interesante el ver la cantidad de cosas que podemos hacer con esta clase de librería.
basado en la plantillas de consumidor OLE DB, para crear un trabajo OLE DB consumidor que realiza tareas como abrir tablas, ejecutar comandos y obtener acceso a datos.


7.     Glosario de Términos

anglicismo: son préstamos lingüísticos del idioma inglés hacia otro idioma. Es una entrada en el registro vivo de nuestro idioma procedente del idioma inglés.
Cadena ANSI: es un estándar publicado por el Instituto Nacional Estadounidense de Estándares (ANSI), para el lenguaje de programación C. Se recomienda a los desarrolladores de software en C que cumplan con los requisitos descritos en el documento para facilitar así la portabilidad del código.
cadena Unicode: es un estándar de codificación de caracteres diseñado para facilitar el tratamiento informático, transmisión y visualización de textos de múltiples lenguajes y disciplinas técnicas, además de textos clásicos de lenguas muertas.
Parámetros: es una variable utilizada para recibir valores de entrada en una rutina, subrutina o método. Dichos valores, que serán enviados desde la rutina invocante, son llamados argumentos.
Big Data: un concepto que hace referencia a un conjuntos de datos tan grandes que aplicaciones informáticas tradicionales de procesamiento de datos.




8.     Linkografia


No hay comentarios:

Publicar un comentario