Tópico anterior: Conectores do SQL

Próximo tópico: Texto da conexão do conector SQL

Exemplo de arquivo de configuração do conector do SQL

Considere um banco de dados MS Access (.mdb) com a seguinte tabela:

Exemplo de configuração do conector do SQL

A única diferença no arquivo de configuração em um arquivo de configuração do conector do SQL e o arquivo de configuração do conector é a seção DatasourceInterface.

A seção DatasourceInterface em um conector de arquivo armazena o conjunto de arquivos em que o arquivo do conector do SQL tem ConnectionString e QueryCollection.

A principal diferença entre os dois arquivos de configuração é o método de recuperação e análise. O restante do arquivo é igual.

A interface do SQL define a conexão com o banco de dados e as consultas usadas para recuperar os dados.

Os detalhes são:

Observação: a seção é definida com base no banco de fontes de dados acima.

Elemento de texto da conexão

ConnectionString: texto da conexão para acessar o banco de dados de origem.

ConnectionString pode ser definido no elemento DataSourceInterface e/ou nos elementos de consulta. A definição de ConnectionString no elemento DataSourceInterface é o padrão e é usada apenas em uma consulta sem uma definição de ConnectionString. Isso permite que o conector se conecte a vários bancos de dados, em que cada consulta pode ter seu próprio texto da conexão. Para obter mais detalhes sobre o mecanismo de texto da conexão, consulte a seção a seguir.

Seção do conjunto de consultas do arquivo de configuração

Query: especifica os atributos de consulta.

A seguir, há um arquivo de configuração completo com layout XML:

<?xml version="1.0" encoding="utf-8"?>
<AdapterConfiguration>
  <General MajorVersion="3" MinorVersion="0" RunOnce="yes" LogDebugMode="yes" ConsoleDebugMode="yes" WorkingDirectoryName="d:\Oblicore\Training Kit\Exercises\Adapters\SQL Adapters\Ex1\Solution">
      <DataSourceDifferenceFromUTC DefaultOffset="1" TimeFormat="%Y/%m/%d-%H:%M:%S"/>
   </General>
   <OblicoreInterface Mode="online">
      <OnlineInterface Port="2000" SecurityLevel="none"/>
   </OblicoreInterface>
   <DataSourceInterface>
      <ConnectionString>

          Driver={Microsoft Access Driver (*.mdb)};Dbq=d:\Oblicore\Training Kit\Exercises\Adapters\SQL Adapters\Ex1\db1.mdb;

      </ConnectionString>
      <QueryCollection>
         <Query QueryName="Query" InputFormat="InputFormat" SleepTime="5">
            <SelectStatement AutoCompleteQuery="yes">

               select time,server,availability from t_availability

          </SelectStatement>
            <QueryKeyFields>
               <KeyField Name="time" Sort="asc" ValueLeftWrapper="#" ValueRightWrapper="#"/>
               <KeyField Name="server" Sort="asc"/>
               <SelectInitialValues>

                     select 'AAA','1/1/1970'

               </SelectInitialValues>
            </QueryKeyFields>
         </Query>
      </QueryCollection>
   </DataSourceInterface>
   <InputFormatCollection>
      <InputFormat InputFormatName="InputFormat">
         <InputFormatFields>
            <InputFormatField Name="timestamp" Type="time" TimeFormat="%m/%d/%Y %I:%M:%S %p"/>
            <InputFormatField Name="server" Type="string"/>
            <InputFormatField Name="status" Type="integer"/>
         </InputFormatFields>
         <TranslatorSwitch DefaultTranslator="Translator"/>
      </InputFormat>
   </InputFormatCollection>
   <TranslatorCollection>
      <Translator TranslatorName="Translator">
         <TranslatorFields>
            <TranslatorField Name="ResourceId" SourceType="table" SourceName="ResourceTable"/>
            <TranslatorField Name="EventTypeId" SourceType="constant" ConstantValue="1500"/>
            <TranslatorField Name="Timestamp" SourceType="field" SourceName="timestamp"/>
            <TranslatorField Name="Value" SourceType="field" SourceName="status"/>
         </TranslatorFields>
      </Translator>
   </TranslatorCollection>
   <TranslationTableCollection LoadingMode="remote">
      <TranslationTable Name="ResourceTable" DestinationType="resource">
         <TranslationField>server</TranslationField>
      </TranslationTable>
   </TranslationTableCollection>
</AdapterConfiguration>