sábado, 9 de junio de 2018

CLASES DE OLEDB







Clases de OleDB
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.



1.   Clases de Ole DB

1.1.               OleDb Connection

Representa una conexión única a un origen de datos. En el caso de un sistema de bases de datos de cliente y servidor, equivale a una conexión de red al servidor. Dependiendo de la funcionalidad que admita el proveedor OLE DB nativo, algunos métodos o propiedades de un objeto OleDbConnection pueden no estar disponibles

Ø  Constructores

Nombre
Descripción
OleDbConnection()
Inicializa una nueva instancia de la clase OleDbConnection. 

OleDbConnection(String)
Inicializa una nueva instancia de la clase OleDbConnection con la cadena de conexión especificada.

Ø  Propiedades

Nombre
Descripción

ConnectionString
Obtiene o establece la cadena que se utiliza para abrir una base de datos.(Reemplaza a DbConnection.ConnectionString).


ConnectionTimeout
Obtiene el tiempo de espera para intentar establecer una conexión antes de detenerse y generar un error.(Reemplaza a DbConnection.ConnectionTimeout).

Container
Obtiene IContainer que contiene Component.(Heredado de Component.)

Database
Obtiene el nombre de la base de datos actual o de la que se va a utilizar una vez que se abre la conexión.(Reemplaza a DbConnection.Database).

DataSource
Obtiene el nombre de archivo o el nombre de servidor del origen de datos.(Reemplaza aDbConnection.DataSource).

Provider
Obtiene el nombre del proveedor OLE DB especificado en la cláusula "Provider= " de la cadena de conexión.

ServerVersion
Obtiene una cadena que contiene la versión del servidor al que está conectado el cliente.(Reemplaza aDbConnection.ServerVersion).

Site
Obtiene o establece ISite de Component.(Hereda do de Component.) 
State
Obtiene el estado actual de la conexión.(Reemplaza a DbConnection.State).

Ø  Metodos

Nombre
Descripción
BeginTransaction()
Inicia una transacción de base de datos con el valor actual de IsolationLevel

BeginTransaction(IsolationLevel)
Inicia una transacción de base de datos con el nivel de aislamiento especificado.


ChangeDatabase(String)
Cambia la base de datos actual de una conexión OleDbConnection abierta.(Re emplaza a DbConnection.ChangeDatabase(Strin g)).

Close()
Cierra la conexión al origen de datos.(Reemplaza a DbConnection.Close())

CreateCommand()
Crea y devuelve un objeto OleDbCommand asociado a OleDbConnection.


CreateObjRef(Type)
Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.(Heredado deMarshalByRefObject.)
Dispose()
Libera todos los recursos utilizados por Component.(Heredado de Component.)
EnlistDistributedTransaction(ITransaction)
Se da de alta en la transacción especificada como una transacción distribuida.


EnlistTransaction(Transaction)
Se da de alta en la transacción especificada como una transacción distribuida.(Reemplaza a DbConnection.EnlistTransaction(Trans action)).

Equals(Object)
Determina si el objeto especificado es igual al objeto actual.(Heredado de Object.)
GetHashCode()
Sirve como una función hash para un tipo en particular. (Heredado de Object.) 


GetLifetimeService()
Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.(Heredado de MarshalByRefObject.)


GetOleDbSchemaTable(Guid, Object())
Devuelve información de esquema desde un origen de datos tal y como indica un GUID, y después de aplicar las restricciones especificadas.

GetSchema()
Devuelve información de esquema para el origen de datos de OleDbConnection.(Reemplaza a DbConnection.GetSchema()).


GetSchema(String)
Devuelve información de esquema para el origen de datos de OleDbConnectionutilizando la cadena especificada para el nombre del esquema.(Reemplaza aDbConnection.GetSchema(String)).




GetSchema(String, String())
Devuelve información de esquema para el origen de datos de OleDbConnectionutilizando la cadena especificada para el nombre de esquema y la matriz de cadena determinada para los valores de restricción.(Reemplaza aDbConnection.GetSchema(String, String ())).
GetType()
Obtiene el Type de la instancia actual. (Heredado de Object.)


InitializeLifetimeService()
Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.(Heredado de MarshalByRefObject.)

Open()
Abre una conexión de base de datos con los valores de propiedad que especificaConnectionString.(Reemplaza a DbConnection.Open()).



OpenAsync()
Una versión asincrónica de Open, que abre una conexión a bases de datos con los valores especificados por ConnectionString.Este método invoca el método virtualOpenAsync con CancellationToken.None.(Heredado de DbConnection.)









OpenAsync(CancellationToken)
Esta es la versión asincrónica de Open.Los proveedores lo deben reemplazar con una implementación apropiada.El token de cancelación se puede aceptar opcionalmente. La implementación predeterminada invoca la llamada sincrónica a Open y devuelve una tarea completada.La implementación predeterminada devolverá una tarea cancelada si se pasa un cancellationToken ya cancelado.Las excepciones producidas por Open se comunicarán mediante la propiedad Task Exception devuelta. No invoque otros métodos y propiedades del objeto DbConnection hasta que se haya completado la tarea devuelta.(Heredado de DbConnection.)

ReleaseObjectPool()
Indica que la agrupación de objetos OleDbConnection podrá liberarse cuando se libere la última conexión subyacente.
ResetState()
Actualiza la propiedad State del objeto OleDbConnection.


ToString()
Devuelve un objeto String que contiene el nombre del objeto Component, en caso de que exista.Este método no debe reemplazarse.(Heredado deComponent.)

Ø  Eventos

Nombre
Descripción

Disposed
Se produce cuando el componente se elimina mediante una llamada al método Dispose. (Heredado de Component.) 

InfoMessage
Se produce cuando el proveedor envía un mensaje de advertencia o de información

StateChange
Se produce cuando cambia el estado del evento.(Heredado de DbConnection.)


1.2.               OleDbDataAdapter

·        Constructores

Nombre
Descripción
Inicializa una nueva instancia de la clase OleDbDataAdapter.
Inicializa una nueva instancia de la clase OleDbDataAdapter con el objeto OleDbCommandespecificado como propiedad SelectCommand
Inicializa una nueva instancia de la clase OleDbDataAdapter con la propiedadSelectCommand.
Inicializa una nueva instancia de la clase OleDbDataAdapter con la propiedad SelectCommand

·        Propiedades

Nombre
Descripción


Obtiene o establece un valor que indica si se llama al método AcceptChanges en un objeto DataRowdespués de agregarlo a DataTable durante cualquiera de las operaciones Fill. (Se hereda de DataAdapter).

Obtiene o establece si se llama a AcceptChanges durante una operación Update. (Se hereda de DataAdapter).
Obtiene un valor que indica si el componente puede generar un evento. (Se hereda de Component).
Obtiene IContainer que contiene Component. (Se hereda de Component).


Obtiene o establece un valor que especifica si debe generarse una excepción cuando se produce un error durante una actualización de fila. (Se hereda de DataAdapter).

Obtiene o establece una instrucción SQL o un procedimiento almacenado para eliminar registros del conjunto de datos.

Obtiene un valor que indica si Component está actualmente en modo de diseño. (Se hereda de Component).


Obtiene la lista de controladores de eventos asociados a Component. (Se hereda de Component).

Obtiene o establece el comportamiento del comando utilizado para rellenar el adaptador de datos. (Se hereda de DbDataAdapter).
Obtiene o establece el valor de LoadOption que determina cómo rellena el adaptador el objeto DataTablea partir de DbDataReader. (Se hereda de DataAdapter).
Obtiene o establece la instrucción SQL o el procedimiento almacenado utilizado para insertar nuevos registros en el origen de datos.
Determina la acción que hay que llevar a cabo si los datos entrantes no tienen una tabla o una columna coincidente. (Se hereda de DataAdapter).
Determina la acción que hay que llevar a cabo cuando el esquema DataSet existente no coincide con los datos entrantes. (Se hereda de DataAdapter).
Obtiene o establece un valor que indica si el método Fill debe devolver valores específicos del proveedor o valores comunes conforme a CLS. (Se hereda de DataAdapter).
Obtiene o establece la instrucción SQL o el procedimiento almacenado utilizado para seleccionar registros del origen de datos.
Obtiene o establece ISite de Component. (Se hereda de Component).
Obtiene una colección que proporciona la asignación principal entre una tabla de origen y DataTable. (Se hereda de DataAdapter).
Obtiene o establece un valor que habilita o deshabilita la compatibilidad con el procesamiento por lotes, y especifica el número de comandos que se pueden ejecutar en un lote. (Se hereda de DbDataAdapter).
Obtiene o establece la instrucción SQL o el procedimiento almacenado utilizado para actualizar registros del origen de datos.

·        Métodos

Nombre
Descripción
Agrega una interfaz IDbCommand al lote actual. (Se hereda de DbDataAdapter).
Quita todos los objetos IDbCommand del lote. (Se hereda de DbDataAdapter).
Obsoleto. Crea una copia de esta instancia de DataAdapter. (Se hereda de DataAdapter).
Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto. (Se hereda de MarshalByRefObject).
Inicializa una nueva instancia de la clase RowUpdatedEventArgs. (Se hereda de DbDataAdapter).
Inicializa una nueva instancia de la clase RowUpdatingEventArgs. (Se hereda de DbDataAdapter).
Crea una nueva colección DataTableMappingCollection. (Se hereda de DataAdapter).
Libera todos los recursos utilizados por el objeto Component. (Se hereda de Component).
Libera los recursos no administrados que utiliza DbDataAdapter y, opcionalmente, también libera los recursos administrados. (Se hereda de DbDataAdapter).
Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Ejecuta el lote actual. (Se hereda de DbDataAdapter).
Agrega o actualiza filas en DataSet. (Se hereda de DbDataAdapter).
Agrega filas en un intervalo especificado de DataSet o las actualiza para hacerlas coincidir con las filas del origen de datos utilizando el nombre de DataTable. (Se hereda de DbDataAdapter).


·        Eventos

Nombre
Descripción
Se produce cuando el componente se elimina mediante una llamada al método Dispose(Se hereda de Component).
Se devuelve cuando se produce un error durante una operación de relleno. (Se hereda de DataAdapter).
Se produce durante Update después de que se ejecute un comando en el origen de datos. Se ha producido un intento de actualización. Por lo tanto, se produce el evento.
Se produce durante el método Update, antes de que se ejecute un comando en el origen de datos. Se ha producido un intento de actualización. Por lo tanto, se produce el evento.

1.3.               OleDbCommand

·        Sintaxis

VB
'Declaración
Public NotInheritable Class OleDbCommand _
   Inherits DbCommand _
   Implements ICloneable, IDbCommand, IDisposable
'Uso
Dim instance As OleDbCommand
J#
public final class OleDbCommand extends DbCommand implements ICloneable, 
   IDbCommand, IDisposable
JScript
public final class OleDbCommand extends DbCommand implements ICloneable, IDbCommand, IDisposable

·         Comentarios

Cuando se crea una instancia de OleDbCommand, las propiedades de lectura y escritura se establecen en sus valores iniciales. Para obtener una lista de esos valores, vea el constructor OleDbCommand.
OleDbCommand tiene los siguientes métodos que ejecutan comandos en el origen de datos:

Elemento
Descripción
Ejecuta comandos que devuelven filas. ExecuteReader podría no tener el efecto deseado si se utiliza para ejecutar comandos como las instrucciones SQL SET.
Ejecuta comandos como instrucciones INSERT, DELETE, UPDATE y SET de SQL.
Recupera un único valor de una base de datos; por ejemplo, un valor agregado.

Se puede restablecer el valor de la propiedad CommandText y volver a utilizar el objeto OleDbCommand. Sin embargo, es necesario cerrar OleDbDataReader para poder ejecutar un comando nuevo o previo.
Si se genera una OleDbException grave (por ejemplo, un nivel de gravedad de SQL Server de 20 o superior) por parte del método que ejecuta un OleDbCommandOleDbConnection, se podría cerrar la conexión. Sin embargo, el usuario puede volver a abrir la conexión y continuar.

·         Ejemplos

En el ejemplo siguiente se utiliza OleDbCommand, junto con OleDbDataAdapter y OleDbConnection, para seleccionar filas de una base de datos de Access. A continuación, se devuelve DataSet rellenado. En el ejemplo se pasa DataSet inicializado, una cadena de conexión, una cadena de consulta que es una instrucción SELECT de SQL y una cadena que es el nombre de la tabla de la base de datos de origen.
VB
Public Sub ReadMyData(ByVal connectionString As String)
    Dim queryString As String = "SELECT OrderID, CustomerID FROM Orders"
    Using connection As New OleDbConnection(connectionString)
        Dim command As New OleDbCommand(queryString, connection)
 
        connection.Open()
 
        Dim reader As OleDbDataReader = command.ExecuteReader()
        While reader.Read()
            Console.WriteLine(reader.GetInt32(0).ToString() + ", " _
               + reader.GetString(1))
        End While
 
        ' always call Close when done reading.
        reader.Close()
    End Using
End Sub



1.4. OleDbDataReader

·         Propiedades

Nombre
Descripción
System_CAPS_pubproperty
Obtiene un valor que indica la profundidad de anidamiento de la fila actual.(Invalida DbDataReader.Depth).
System_CAPS_pubproperty
Obtiene el número de columnas de la fila actual.(Invalida DbDataReader.FieldCount).
System_CAPS_pubproperty
Obtiene un valor que indica si la OleDbDataReader contiene una o más filas.(Invalida DbDataReader.HasRows).
System_CAPS_pubproperty
Indica si el lector de datos está cerrado.(Invalida DbDataReader.IsClosed).
System_CAPS_pubproperty
Obtiene el valor de la columna especificada en su formato nativo dado el ordinal de columna.(Invalida DbDataReader.Item(Int32)).
System_CAPS_pubproperty
Obtiene el valor de la columna especificada en su formato nativo dado el nombre de columna.(Invalida DbDataReader.Item(String)).
System_CAPS_pubproperty
Obtiene el número de filas cambiadas, insertadas o eliminadas mediante la ejecución de la instrucción SQL.(Invalida DbDataReader.RecordsAffected).
System_CAPS_pubproperty
Obtiene el número de campos de OleDbDataReader que no están ocultos.(Invalida DbDataReader.VisibleFieldCount).

·         Métodos

Nombre
Descripción

Cierra el objeto OleDbDataReader.(Invalida DbDataReader.Close()).

Crea un objeto que contiene toda la información relevante necesaria para generar a un proxy que se utiliza para comunicarse con un objeto remoto.(Heredado de MarshalByRefObject).

Libera todos los recursos usados por la instancia actual de la clase DbDataReader.(Heredado de DbDataReader).

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

Obtiene el valor de la columna especificada como tipo Boolean.(Invalida DbDataReader.GetBoolean(Int32)).

Obtiene el valor de la columna especificada como un byte.(Invalida DbDataReader.GetByte(Int32)).

Lee una secuencia de bytes desde el desplazamiento de la columna especificada en el búfer como matriz, comenzando en el desplazamiento de búfer dado.(Invalida DbDataReader.GetBytes(Int32, Int64, Byte(), Int32, Int32)).

Obtiene el valor de la columna especificada como un carácter.(Invalida DbDataReader.GetChar(Int32)).

Lee una secuencia de caracteres del desplazamiento de columna especificado en el búfer como matriz, comenzando en el desplazamiento de búfer dado.(Invalida DbDataReader.GetChars(Int32, Int64, Char(), Int32, Int32)).

Devuelve un OleDbDataReader objeto para el ordinal de columna solicitado.

Obtiene el nombre del tipo de datos de origen.(Invalida DbDataReader.GetDataTypeName(Int32)).

Obtiene el valor de la columna especificada como un objeto DateTime.(Invalida DbDataReader.GetDateTime(Int32)).

Obtiene el valor de la columna especificada como un objeto Decimal.(Invalida DbDataReader.GetDecimal(Int32)).

Obtiene el valor de la columna especificada como un número de punto flotante de precisión doble.(Invalida DbDataReader.GetDouble(Int32)).

Devuelve una interfaz IEnumerator que se puede utilizar para recorrer en iteración las filas en el lector de datos.(Invalida DbDataReader.GetEnumerator()).

Obtiene el Type que es el tipo de datos del objeto.(Invalida DbDataReader.GetFieldType(Int32)).

Sincrónicamente, obtiene el valor de la columna especificada como un tipo.(Heredado de DbDataReader).

Obtiene el valor de la columna especificada como un tipo de forma asincrónica.(Heredado de DbDataReader).

Obtiene el valor de la columna especificada como un tipo de forma asincrónica.(Heredado de DbDataReader).

Obtiene el valor de la columna especificada como un número de punto flotante de precisión sencilla.(Invalida DbDataReader.GetFloat(Int32)).

Obtiene el valor de la columna especificada como un identificador único global (GUID).(Invalida DbDataReader.GetGuid(Int32)).

Sirve como la función hash predeterminada.(Heredado de Object).

Obtiene el valor de la columna especificada como un entero de 16 bits con signo.(Invalida DbDataReader.GetInt16(Int32)).

Obtiene el valor de la columna especificada como un entero de 32 bits con signo.(Invalida DbDataReader.GetInt32(Int32)).

Obtiene el valor de la columna especificada como un entero de 64 bits con signo.(Invalida DbDataReader.GetInt64(Int32)).

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.(Heredado de MarshalByRefObject).

Obtiene el nombre de la columna especificada.(Invalida DbDataReader.GetName(Int32)).

Obtiene el índice de columna, dado el nombre de la columna.(Invalida DbDataReader.GetOrdinal(String)).

Devuelve el tipo de campo específico del proveedor de la columna especificada.(Heredado de DbDataReader).

Obtiene el valor de la columna especificada como una instancia de Object.(Heredado de DbDataReader).

Obtiene todas las columnas de atributos específicos del proveedor en la colección para la fila actual.(Heredado de DbDataReader).

Devuelve un objeto DataTable que describe los metadatos de columna del OleDbDataReader.(Invalida DbDataReader.GetSchemaTable()).

Recupera los datos como un Stream.(Heredado de DbDataReader).

Obtiene el valor de la columna especificada como una cadena.(Invalida DbDataReader.GetString(Int32)).

Recupera los datos como un TextReader.(Heredado de DbDataReader).

Obtiene el valor de la columna especificada como un objeto TimeSpan.

Obtiene el Type de la instancia actual.(Heredado de Object).

Obtiene el valor de la columna en el ordinal especificado en su formato nativo.(Invalida DbDataReader.GetValue(Int32)).

Rellena una matriz de objetos con los valores de columna de la fila actual.(Invalida DbDataReader.GetValues(Object())).

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.(Heredado de MarshalByRefObject).

Obtiene un valor que indica si la columna contiene valores que no existen o ausentes.(Invalida DbDataReader.IsDBNull(Int32)).

Una versión asincrónica de IsDBNull, que obtiene un valor que indica si la columna contiene valores inexistentes o ausentes.(Heredado de DbDataReader).

Una versión asincrónica de IsDBNull, que obtiene un valor que indica si la columna contiene valores inexistentes o ausentes. Opcionalmente, envía una notificación que se deben cancelar las operaciones.(Heredado de DbDataReader).

Desplaza el lector de datos al resultado siguiente cuando se leen los resultados de instrucciones SQL por lotes.(Invalida DbDataReader.NextResult()).
Una versión asincrónica de NextResult, que hace avanzar el lector hasta el resultado siguiente cuando se leen los resultados de un lote de instrucciones.
Invoca NextResultAsync con CancellationToken.None.(Heredado de DbDataReader).

Esta es la versión asincrónica de NextResult. Los proveedores deberían reemplazar con una implementación apropiada. El cancellationToken opcionalmente puede omitirse.
La implementación predeterminada invoca sincrónico NextResult método y devuelve una tarea finalizada, bloquear el subproceso que realiza la llamada. La implementación predeterminada devuelve una tarea cancelada si pasa un ya cancelados cancellationToken. Las excepciones producidas por NextResult se comunicarán a través de la propiedad de excepción de la tarea devuelta.
Otros métodos y propiedades del objeto DbDataReader no deben invocarse mientras no se ha completado la tarea devuelta.(Heredado de DbDataReader).

Hace avanzar el OleDbDataReader al siguiente registro.(Invalida DbDataReader.Read()).

Una versión asincrónica de Read, que hace avanzar el lector hasta el siguiente registro de un conjunto de resultados. Este método invoca ReadAsync con CancellationToken.None.(Heredado de DbDataReader).

Esta es la versión asincrónica de Read. Los proveedores deberían reemplazar con una implementación apropiada. Opcionalmente, se puede omitir el cancellationToken.
La implementación predeterminada invoca sincrónico Read método y devuelve una tarea finalizada, bloquear el subproceso que realiza la llamada. La implementación predeterminada devuelve una tarea cancelada si pasa un cancellationToken ya cancelado. Las excepciones producidas por lectura se comunicará a través de la propiedad de excepción de la tarea devuelta.
No se invocan otros métodos y propiedades de la DbDataReader del objeto hasta que se complete la tarea devuelta.(Heredado de DbDataReader).

Devuelve una cadena que representa el objeto actual.(Heredado de Object).

Implementaciones de interfaz explícitas

Nombre
Descripción

Para una descripción de este miembro, vea IDataRecord.GetData.(Heredado de DbDataReader).

Métodos de extensión

Nombre
Descripción

Sobrecargado. Habilita la paralelización de una consulta.(Definido por ParallelEnumerable).

Sobrecargado. Convierte un IEnumerable para un IQueryable.(Definido por Queryable).

Convierte los elementos de un IEnumerable al tipo especificado.(Definido por Enumerable).

Filtra los elementos de un IEnumerable basado en un tipo especificado.(Definido por Enumerable).

·        Comentarios

Para crear un OleDbDataReader, se debe llamar a la ExecuteReader el método de la OleDbCommand objeto, en lugar de utilizar directamente un constructor.
Antes de cerrar la OleDbConnection, cierre primero la OleDbDataReader objeto. También debe cerrar la OleDbDataReader objeto si planea resuse un OleDbCommand objeto. Por ejemplo, no se puede recuperar parámetros de salida hasta después de llamar a Close.
Los cambios realizados en un conjunto por otro proceso o subproceso mientras se leen los datos de resultados pueden ser visibles para el usuario de la OleDbDataReader. Sin embargo, el comportamiento exacto depende de la sincronización.
IsClosed y RecordsAffected son las únicas propiedades que se pueden llamar después de la OleDbDataReader está cerrado. Aunque elRecordsAffected puede tener acceso a propiedad mientras el OleDbDataReader existe, llame siempre a Close antes de devolver el valor deRecordsAffected para garantizar el valor devuelto es preciso.

·        Ejemplos

En el ejemplo siguiente se crea un OleDbConnection, un OleDbCommand, y un OleDbDataReader. En el ejemplo se lee los datos, escribirlos en la consola. Por último, el ejemplo cierra la OleDbDataReader y, a continuación, el OleDbConnection.
VB
Public Sub ReadData(ByVal connectionString As String, _
    ByVal queryString As String)
    Using connection As New OleDbConnection(connectionString)
        Dim command As New OleDbCommand(queryString, connection)
 
        connection.Open()
 
        Dim reader As OleDbDataReader = command.ExecuteReader()
        While reader.Read()
            Console.WriteLine(reader(0).ToString())
        End While
        reader.Close()
    End Using
End Sub

1.5.               OleDbParameter

·        Sintaxis

Public NotInheritable Class OleDbParameter
    Inherits DbParameter
    Implements ICloneable, IDbDataParameter, IDataParameter

·        Constructores

Nombre
Descripción

Inicializa una nueva instancia de la clase OleDbParameter.

Inicializa una nueva instancia de la OleDbParameter clase que utiliza el nombre del parámetro y el valor del nuevo OleDbParameter.

Inicializa una nueva instancia de la OleDbParameter clase que usa el tipo de datos y el nombre de parámetro.

Inicializa una nueva instancia de la OleDbParameter clase que utiliza el nombre de parámetro, el tipo de datos y la longitud.

Inicializa una nueva instancia de la OleDbParameter clase que utiliza el nombre de parámetro, tipo de datos, longitud, nombre de columna de origen, dirección del parámetro, la precisión numérica y otras propiedades.

Inicializa una nueva instancia de la OleDbParameter clase que utiliza el nombre de parámetro, tipo de datos, longitud, nombre de columna de origen, dirección del parámetro, la precisión numérica y otras propiedades.

Inicializa una nueva instancia de la OleDbParameter clase que utiliza el nombre de parámetro, el tipo de datos, la longitud y el nombre de columna de origen.

·        Propiedades

Nombre
Descripción

Obtiene o establece el DbType del parámetro.(Invalida DbParameter.DbType).

Obtiene o establece un valor que indica si el parámetro es sólo de entrada, sólo de salida, bidireccional o un parámetro de valor devuelto del procedimiento almacenado.(Invalida DbParameter.Direction).

Obtiene o establece un valor que indica si el parámetro acepta valores null.(Invalida DbParameter.IsNullable).

Obtiene o establece el OleDbType del parámetro.

Obtiene o establece el nombre de OleDbParameter.(Invalida DbParameter.ParameterName).

Obtiene o establece el número máximo de dígitos que se usan para representar la propiedad Value.

Obtiene o establece el número de posiciones decimales con que se resuelve Value.

Obtiene o establece el tamaño máximo, en bytes, de los datos de la columna.(Invalida DbParameter.Size).

Obtiene o establece el nombre de la columna de origen asignada a la DataSet y utilizada para cargar o devolver el Value.(Invalida DbParameter.SourceColumn).

Establece u obtiene un valor que indica si la columna de origen acepta valores null. Esto permite a DbCommandBuilder generar correctamente instrucciones Update para las columnas que aceptan valores NULL.(Invalida DbParameter.SourceColumnNullMapping).

Obtiene o establece la DataRowVersion a utilizar al cargar Value.(Invalida DbParameter.SourceVersion).

Obtiene o establece el valor del parámetro.(Invalida DbParameter.Value).

·        Métodos

Nombre
Descripción

Crea un objeto que contiene toda la información relevante necesaria para generar a un proxy que se utiliza para comunicarse con un objeto remoto.(Heredado de MarshalByRefObject).

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

Sirve como la función hash predeterminada.(Heredado de Object).

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.(Heredado de MarshalByRefObject).

Obtiene el Type de la instancia actual.(Heredado de Object).

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.(Heredado de MarshalByRefObject).

Restablece el tipo asociado a este OleDbParameter.(Invalida DbParameter.ResetDbType()).

Restablece el tipo asociado a este OleDbParameter.

Obtiene una cadena que contiene la propiedad ParameterName.(Invalida Object.ToString()).

·        Implementaciones de interfaz explícitas

Nombre
Descripción

Para una descripción de este miembro, vea ICloneable.Clone.

Indica la precisión de los parámetros numéricos.(Heredado de DbParameter).

Para una descripción de este miembro, vea IDbDataParameter.Scale.(Heredado de DbParameter).

·        Comentarios

El proveedor de datos OLE DB Framework utiliza parámetros de posición que se marcan con un signo de interrogación (?) en lugar de parámetros con nombre.
Al consultar una base de datos de Oracle mediante el proveedor Microsoft OLE DB para Oracle (MSDAORA) y el proveedor de datos OLE DB Framework, utilizando el LIKE cláusula para consultar valores en campos de longitud fija puede no devolver coincidencias todas las esperadas.El motivo es que cuando Oracle compara los valores para los campos de longitud fija en un LIKE cláusula, coincide con toda la longitud de la cadena, incluyendo los espacios finales de relleno. Por ejemplo, si una tabla en una base de datos de Oracle contiene un campo denominado "Field1" que se define como char(3), y escriba el valor "a" en una fila de la tabla, el siguiente código no devuelve la fila.
VB
Dim queryString As String = "SELECT * FROM Table1 WHERE Field1 LIKE ?"
Dim command As OleDbCommand = New OleDbCommand(queryString, connection)
command.Parameters.Add("@p1", OleDbType.Char, 3).Value = "a"
Dim reader As OleDbDataReader = command.ExecuteReader()
Esto es porque Oracle almacena el valor de columna como "a" (relleno "a", con espacios finales hasta la longitud de campo fijo de 3), que Oracle no se trata como una coincidencia para el valor del parámetro de "a" en el caso de un LIKE comparación de campos de longitud fija.
Para resolver este problema, anexe un carácter comodín de porcentaje ("%") al valor del parámetro ("a%"), o utilizar una SQL = comparación en su lugar.

·        Ejemplos

En el ejemplo siguiente se crea varias instancias de OleDbParameter a través de la OleDbParameterCollection colección dentro de laOleDbDataAdapter. Estos parámetros se utilizan para seleccionar datos del origen de datos y colocarlos en el DataSet. En este ejemplo se supone que un DataSet y un OleDbDataAdapter ya creados utilizando el esquema apropiado, comandos y conexión.
VB
Public Function GetDataSetFromAdapter( _
    ByVal dataSet As DataSet, ByVal connectionString As String, _
    ByVal queryString As String) As DataSet
 
    Using connection As New OleDbConnection(connectionString)
        Dim adapter As New OleDbDataAdapter(queryString, connection)
 
        ' Set the parameters.
        adapter.SelectCommand.Parameters.Add( _
            "@CategoryName", OleDbType.VarChar, 80).Value = "toasters"
        adapter.SelectCommand.Parameters.Add( _
         "@SerialNum", OleDbType.Integer).Value = 239
 
        ' Open the connection and fill the DataSet.
        Try
            connection.Open()
            adapter.Fill(dataSet)
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
        ' The connection is automatically closed when the
        ' code exits the Using block.
    End Using
 
    Return dataSet
End Function




1.6.OleDbTransaction

·        Sintaxis

'Declaración
Public NotInheritable Class OleDbTransaction _
   Inherits DbTransaction
El tipo OleDbTransaction expone los siguientes miembros.

·        Propiedades

Nombre
Descripción
Obtiene el objeto OleDbConnection asociado a la transacción, o referencia null (Nothing en Visual Basic) si la transacción ya no es válida.
Especifica el objeto DbConnection asociado a la transacción. (Se hereda de DbTransaction).
Especifica el IsolationLevel para esta transacción. (Invalida a DbTransaction.IsolationLevel).

·        Métodos

Nombre
Descripción
Inicia una transacción de base de datos anidada.
Inicia una transacción de base de datos anidada y especifica el nivel de aislamiento que se va a usar para la nueva transacción.
Confirma la transacción de base de datos. (Invalida a DbTransaction.Commit).
Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto. (Se hereda de MarshalByRefObject).
Libera los recursos no administrados que utiliza DbTransaction. (Se hereda de DbTransaction).
Libera los recursos no administrados que utiliza DbTransaction y libera los recursos administrados de forma opcional. (Se hereda de DbTransaction).
Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Actúa como función hash para un tipo concreto. (Se hereda de Object).
Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.(Se hereda de MarshalByRefObject).
Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
Crea una copia superficial del objeto Object actual. (Se hereda de Object).
Crea una copia superficial del objeto MarshalByRefObject actual. (Se hereda de MarshalByRefObject).
Deshace una transacción desde un estado pendiente. (Invalida a DbTransaction.Rollback).
Devuelve una cadena que representa el objeto actual. (Se hereda de Object).

·        Implementaciones explícitas de interfaces

Nombre
Descripción
IDbTransaction.Connection
Obtiene el objeto DbConnection asociado a la transacción, o una referencia nula si la transacción ya no es válida. (Se hereda de DbTransaction).

·        Comentarios

La aplicación crea un objeto OleDbTransaction llamando a BeginTransaction en el objeto OleDbConnection. Todas las operaciones siguientes asociadas a la transacción (por ejemplo, su confirmación o anulación) se realizan en el objeto OleDbTransaction.

2.   Resumen

 
Clases de OleDB
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.
1. Clases de Ole DB
1.1. OleDb Connection
Representa una conexión única a un origen de datos.
OleDbConnection(String) Inicializa una nueva instancia de la clase OleDbConnection con la cadena de conexión especificada.
Ø Propiedades
Nombre Descripción
ConnectionString Obtiene o establece la cadena que se utiliza para abrir una base de datos.(Reemplaza a DbConnection.ConnectionString).
ConnectionTimeout Obtiene el tiempo de espera para intentar establecer una conexión antes de detenerse y generar un error.(Reemplaza a DbConnection.ConnectionTimeout).
Container Obtiene IContainer que contiene Component.(Heredado de Component.)
Database Obtiene el nombre de la base de datos actual o de la que se va a utilizar una vez que se abre la conexión.(Reemplaza a DbConnection.Database).
DataSource Obtiene el nombre de archivo o el nombre de servidor del origen de datos.(Reemplaza aDbConnection.DataSource).
Provider Obtiene el nombre del proveedor OLE DB especificado en la cláusula "Provider= " de la cadena de conexión.
ServerVersion Obtiene una cadena que contiene la versión del servidor al que está conectado el cliente.(Reemplaza aDbConnection.ServerVersion).
Site Obtiene o establece ISite de Component.(Hereda do de Component.)
State Obtiene el estado actual de la conexión.(Reemplaza a DbConnection.State).
Ø Metodos
Nombre Descripción
BeginTransaction() Inicia una transacción de base de datos con el valor actual de IsolationLevel
BeginTransaction(IsolationLevel) Inicia una transacción de base de datos con el nivel de aislamiento especificado.
ChangeDatabase(String) Cambia la base de datos actual de una conexión OleDbConnection abierta.(Re emplaza a DbConnection.ChangeDatabase(Strin g)).
Close() Cierra la conexión al origen de datos.(Reemplaza a DbConnection.Close())
CreateCommand() Crea y devuelve un objeto OleDbCommand asociado a OleDbConnection.
CreateObjRef(Type) Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.(Heredado deMarshalByRefObject.)
Dispose() Libera todos los recursos utilizados por Component.(Heredado de Component.)
EnlistDistributedTransaction(ITransaction) Se da de alta en la transacción especificada como una transacción distribuida.
EnlistTransaction(Transaction) Se da de alta en la transacción especificada como una transacción distribuida.(Reemplaza a DbConnection.EnlistTransaction(Trans action)).
Equals(Object) Determina si el objeto especificado es igual al objeto actual.(Heredado de Object.)
GetHashCode() Sirve como una función hash para un tipo en particular. (Heredado de Object.)
GetLifetimeService() Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.(Heredado de MarshalByRefObject.)
GetOleDbSchemaTable(Guid, Object()) Devuelve información de esquema desde un origen de datos tal y como indica un GUID, y después de aplicar las restricciones especificadas.
GetSchema() Devuelve información de esquema para el origen de datos de OleDbConnection.(Reemplaza a DbConnection.GetSchema()).
GetSchema(String) Devuelve información de esquema para el origen de datos de OleDbConnectionutilizando la cadena especificada para el nombre del esquema.(Reemplaza aDbConnection.GetSchema(String)).
GetSchema(String, String()) Devuelve información de esquema para el origen de datos de OleDbConnectionutilizando la cadena especificada para el nombre de esquema y la matriz de cadena determinada para los valores de restricción.(Reemplaza aDbConnection.GetSchema(String, String ())).
GetType() Obtiene el Type de la instancia actual.

3.   Summary


OLE DB OleDB classes (sometimes written as OLEDB or OLE-DB) is an acronym for Object Linking and Embedding, for Databases ("Link and embedding for databases") and is a technology developed by Microsoft used to have access to different sources of information, or databases, in a uniform manner.
1. Ole DB classes
1.1. OleDb connection
represents a unique connection to a data source.
OleDbConnection(String) Initializes a new instance of the OleDbConnection class with the specified connection string.
 Properties
Name Description
ConnectionString property gets or sets the string that is used to open a database.(Replaces DbConnection.ConnectionString property).
ConnectionTimeout gets the waiting time to attempt to establish a connection before stopping and generate an error.(Replaces DbConnection.ConnectionTimeout).
IContainer container gets that contains Component.(inherited from Component.)
Database Gets the name of the current database, or of which you are going to use it once the connection is opened.(Replaces DbConnection object.Database).
DataSource property gets the file name or the server name of the data source.(Replaces aDbConnection.DataSource).
Provider gets the name of the OLE DB provider specified in clause "Provider= " of the connection string.
ServerVersion gets a string containing the version of the server connected to the client.(Replaces aDbConnection.ServerVersion).
Site Gets or sets ISite from Component.(inherited from Component.)
State Gets the current connection status.(Replaces DbConnection.State).
 Methods
Name Description
BeginTransaction() Starts a database transaction with the current value of
BeginTransaction IsolationLevel(IsolationLevel Property) Starts a database transaction with the isolation level specified.
ChangeDatabase(String) Changes the current database of a OleDbConnection connection open.(Re challenged DbConnection.STRIN CHANGEDATABASE(g)).
Close() closes the connection to the data source.(Replaces DbConnection.Close())
CreateCommand method() creates and returns an OleDbCommand object associated with an OleDbConnection.
CreateObjRef(Type) Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.(Inherited deMarshalByRefObject.)
Dispose() method releases all resources used by the Component.(inherited from Component.)
(ITransaction EnlistDistributedTransaction) is given in the transaction that is specified as a distributed transaction.
EnlistTransaction(Transaction) is enlisted in the specified transaction as a distributed transaction.(Replaces DbConnection.EnlistTransaction(Trans action)).
Equals(Object) Determines whether the specified object is equal to the current object.(inherited from Object.)
GetHashCode() serves as a hash function for a particular type. (Inherited From Object.)
GetLifetimeService() retrieves the current lifetime service that controls the lifetime policy for this instance.(inherited from MarshalByRefObject.)
GetOleDbSchemaTable(Guid, Object()) Returns schema information from a data source as a GUID, and after applying the restrictions.
GetSchema() Returns schema information for the data source for an OleDbConnection.(Replaces DbConnection.GetSchema()).
The GetSchema method(String) returns schema information for the data source in OleDbConnectionutilizando the string specified for the name of the schema.(Replaces aDbConnection.GetSchema(String)).
The GetSchema method(String, String()) Returns schema information for the data source in OleDbConnectionutilizando the string specified for the schema name and the matrix of certain string for the constraint values.(Replaces aDbConnection.GetSchema(String, String ())).
GetType() gets the type of the current instance.

4.   Conclusiones

v  OLE DB permite separar los datos de la aplicación que los requiere.
v  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)
v  Los proveedores OLE DB pueden ser creados para tener acceso a almacenes de datos que van desde simples archivos de texto y hojas de cálculo, hasta bases de datos complejas como OracleMicrosoft SQL Server o Sybase ASE.

5.   Apreciación del equipo

v  OLE DB se ha diseñado como sustituto de alto nivel para ODBC para dar soporte a una variedad más amplia de bases de datos no relacionales que no implementan SQL necesariamente (por ejemplo, bases de datos de objeto y hojas de cálculo). 
v  El estándar internacional para SQL define un lenguaje de alto nivel estándar para acceder y manipular los datos que están almacenados en una base de datos relacional. 
v  Como las diferentes fuentes de datos pueden tener diferentes capacidades, es posible que los proveedores OLE DB no implementen todas las interfaces posible para OLE DB.

6.   Glosario de Términos

Objetos de datos ActiveX
 Interfaz de acceso a datos que comunica con orígenes de datos conformes a OLE DB para conectar con datos, recuperarlos, manipularlos y actualizarlos.
objetos de datos ActiveX (multidimensional)
Conjunto de interfaces de acceso a datos basadas en objetos, de alto nivel e independientes del lenguaje usado, optimizadas para aplicaciones de datos multidimensionales.
host de adaptador
Adaptador de clase abstracta raíz que define el protocolo de enlace entre el adaptador y el servidor de StreamInsight en el punto de interacción ENQUEUE. Proporciona todos los servicios de adaptador necesarios, por ejemplo administración de memoria y control de excepciones.
ADO
Interfaz de acceso a datos que comunica con orígenes de datos conformes a OLE DB para conectar con datos, recuperarlos, manipularlos y actualizarlos.
ADO MD
Conjunto de interfaces de acceso a datos basadas en objetos, de alto nivel e independientes del lenguaje usado, optimizadas para aplicaciones de datos multidimensionales.
ADOMD.NET
Proveedor de datos administrados .NET que proporciona acceso a orígenes de datos multidimensionales, como Microsoft SQL Server Analysis Services.
función de agregado
Función que realiza un cálculo sobre varios valores y devuelve un valor único.
consulta de agregado
Consulta (instrucción SQL) que resume información de varias filas mediante la inclusión de una función de agregado como Sum o Avg.
Alias
Etiqueta alternativa para algún objeto, como un archivo o una recopilación de datos.
Agregación
Tabla o estructura que contiene datos precalculados para un cubo de procesamiento analítico en línea (OLAP). Las agregaciones admiten la realización rápida y eficaz de consultas de una base de datos multidimensional.


7.   Linkografia


No hay comentarios:

Publicar un comentario