Proveedor OLE DB para Exchange

El proveedor Microsoft OLE DB para Exchange presenta datos almacenados en un almacén Web de Microsoft Exchange 2000 de forma tabular. Es posible consultar estos datos mediante un lenguaje parecido a SQL que es similar al subconjunto de SQL que admite el proveedor OLE DB para los servicios de Microsoft Index Server.

Es posible utilizar consultas distribuidas de Microsoft SQL Server para consultar datos de un almacén Web de Exchange a través de este proveedor OLE DB y se pueden combinar con tablas en SQL Server. El almacén Web de Exchange debe ubicarse en el mismo equipo que SQL Server. Mediante el proveedor OLE DB para Exchange, no se puede obtener acceso a los almacenes Web ubicados en otros equipos.

El proveedor OLE DB para Exchange está disponible como parte de Microsoft Exchange 2000.

Para crear un servidor vinculado en un almacén Web de Exchange

  • Utilice 'exoledb.DataSource.1' como el argumento provider_name y la dirección URL correspondiente a la carpeta raíz del almacén Web como el argumento data_source del procedimiento almacenado del sistema sp_addlinkedserver.

    EXEC sp_addlinkedserver 'exchange', 
    'Exchange OLE DB provider', 
    'exoledb.DataSource.1',
    'file:\\.\backofficestorage\localhost\public folders'
    
  • Para inicios de sesión autenticados de Windows, no se requieren asignaciones de inicio de sesión. SQL Server representa los inicios de sesión cuando éste se conecta al proveedor OLE DB para Exchange. Para inicios de sesión autenticados de SQL Server, configure las asignaciones de inicio de sesión suministrando el nombre de usuario y la contraseña, según sea necesario.

Cuando se consultan datos del proveedor OLE DB para Exchange, se aplican las siguientes restricciones:

  • Sólo se admiten consultas de paso a través. No es posible utilizar nombres de cuatro partes para el proveedor OLE DB para Exchange.

  • Todas las columnas de caracteres del proveedor OLE DB para Exchange se presentan a SQL Server como columnas ntext. Para realizar comparaciones con estas columnas, deben convertirse explícitamente a nvarchar mediante la función CONVERT.

  • Las columnas de múltiples valores del proveedor Exchange con OLE DB DBTYPE DBTYPE_VECTOR no se admiten en las consultas distribuidas de SQL Server.

Para obtener acceso a datos en el almacén Web de Exchange desde SQL Server a través de un servidor vinculado como el anterior

  • Cree vistas que recuperen las propiedades necesarias como columnas de la carpeta de almacén Web pertinente. La definición de vista convierte columnas de string a nvarchar para que se puedan filtrar mediante condiciones en la cláusula WHERE.

    Por ejemplo, permita que el almacén Web contenga una carpeta llamada Contacts que tenga una lista de contactos. El script siguiente crea una vista para la carpeta Contacts y recupera el nombre, los apellidos, el nombre de la empresa y la fecha de nacimiento de cada contacto.

    CREATE VIEW Contacts
    AS
    SELECT convert(nvarchar(30),"urn:schemas:contacts:sn") LastName,
    Convert(nvarchar(30),"urn:schemas:contacts:givenname") 
    FirstName,
       Convert(nvarchar(30), "urn:schemas:contacts:o") Company,
       Convert(nvarchar(50), "urn:schemas:contacts:email1") Email,
       "urn:schemas:contacts:bday" BirthDay
    FROM OpenQuery(Exchange, 
      'SELECT "urn:schemas:contact:sn", 
              "urn:schema:contacts:givenname", 
              "urn:schemas:contacts:o",
           "urn:schemas:contacts:email1",
           "urn:schemas:contacts:bday"
       FROM ''.\contacts''')
    

    Ahora es posible consultar y combinar las vistas con tablas de SQL Server locales como tablas normales. Por ejemplo, es posible combinar la vista Contacts con una tabla local Suppliers para determinar la información de contacto de la lista de empresas de proveedores.

    SELECT FirstName, LastName, Email, Company
    FROM    Suppliers S, Contacts C
    WHERE S.Company = C.CompanyName
    

Para obtener más información acerca del lenguaje SQL que admite el proveedor OLE DB para Exchange, vea la documentación de Microsoft Exchange 2000.