Introdução  Tabelas  Relacionamentos  Consultas  Formulários  Relatórios  Macros  Módulos
ActiveX  Automação OLE  Gráficos  DAO  SQL  Segurança  Redes/ODBC  Novidades do 97
Dicas  Curso de Access97 Online  Links  Downloads

ODBC
 
 CORRIGIDO

Banco de Dados ODBC

ODBC (Open Database Connectivity)

ODBCDirect

1) Novos recursos com o ODBCDirect

2) Utilizando DAO para acessar bancos de dados ODBC sem carregar o mecanismo de banco de dados Microsoft Jet

3) USAR ODBCDIRECT COM O MICROSOFT ACCESS

4) Configurar fontes de dados ODBC

5) Configuring the Microsoft Jet Database Engine for ODBC Access

6) Construtor de seqüências de conexão ODBC

7) Criar a seqüência de conexão ODBC para uma consulta passagem SQL

8) Fonte de Dados ODBC

9) Personalizar as configurações do driver ODBC

10) Método SetOption

11) Utilizar o Editor de Registro

12) Sobre instalação de drivers ODBC

13) Configurar fontes de dados ODBC

14) Instalar drivers para bancos de dados internos

15) Instalar o Driver para o Microsoft Access

16) Usar ODBCDirect com o Microsoft Access

17) Propriedade ODBCConnectStr (SeqüênciaDeConexãoODBC)
 
 

ODBC
 

Banco de Dados ODBC

Um banco de dados para o qual é fornecido um driver ODBC (Open Database Connectivity) que você pode utilizar para importar, vincular, ou exportar dados.

ODBC (Open Database Connectivity)

Um protocolo padrão para acesso a informações em servidores de banco de dados SQL, como o Microsoft SQL Server. Você pode instalar drivers ODBC que permitam ao Microsoft Access conectar-se a esses servidores de banco de dados SQL e acessar os dados nos bancos de dados SQL.
 

ODBCDirect

Uma tecnologia que permite ao usuário acessar fontes de dados ODBC diretamente, utilizando os recursos DAO que ignoram o mecanismo de banco de dados Microsoft Jet.

 

1) Novos recursos com o ODBCDirect

Conexões ao servidor

Disponível apenas no modelo de objetos ODBCDirect, o novo objeto Connection contém informações sobre uma conexão a uma fonte de dados ODBC, como o nome do servidor, o nome da fonte de dados e assim por diante. Ele é semelhante a um objeto Database e parecerá bastante familiar se você já tiver aberto um objeto Database em uma fonte de dados ODBC. Na verdade, um objeto Connection e um objeto Database representam referências distintas ao mesmo objeto. Novas propriedades em cada um desses dois tipos de objetos permitem que você obtenha uma referência ao outro objeto correspondente, o que simplifica a tarefa de conversão dos aplicativos cliente ODBC existentes que utilizam o Microsoft Jet para passarem a utilizar o ODBCDirect.

Atualizações em lote

Um novo cursor de atualização em lote se encontra disponível para aplicativos cliente que precisem ser executados com um cursor sem exercer bloqueios no servidor ou executar solicitações de atualização um registro por vez. Em vez disso, o cliente armazena as informações sobre a atualização em vários registros em um buffer local (ou "em lote") e, em seguida, executa uma atualização em lote. Isso também permite uma simples "canalização dos dados", na qual o cliente interrompe a conexão ao servidor e a restabelece em um outro servidor.

Devido ao atraso entre a abertura de um Recordset e o envio de um lote de atualizações desse Recordset de volta para o servidor, outros usuários têm a oportunidade de modificar os dados originais antes de as suas alterações serem enviadas para o servidor. Por isso, as alterações que você fizer irão "entrar em conflito" com as alterações feitas por um outro usuário. Vários recursos novos estão disponíveis para ajudá-lo a descobrir onde esses conflitos ocorreram, após uma atualização em lote, e irão sugerir algumas opções para solucioná-los.

Execução de método assíncrono

Os métodos Execute, MoveLast, OpenConnection e OpenRecordset contêm a opção dbRunAsync. Essa opção permite que o seu aplicativo cliente realize outras tarefas (por exemplo, carregar formulários) enquanto o método está sendo executado. Você também pode pesquisar para saber se a tarefa foi concluída e finalizar uma tarefa assíncrona.

Suporte do cliente a cursores ODBC

Quatro tipos diferentes de Recordset oferecem suporte aos seguintes tipos de cursores ODBC:

Cursor ODBC Tipo de Recordset

Dynamic dbOpenDynamic (Novo no DAO 3.5)

Dynaset dbOpenDynaset

Forward-Only dbOpenForwardOnly (Novo no DAO 3.5)

Static dbOpenSnapshot

 

2) Utilizando DAO para acessar bancos de dados ODBC sem carregar o mecanismo de banco de dados Microsoft Jet

Usar ODBCDirect com o Microsoft Access

O Que é ODBCDirect?

ODBCDirect é uma tecnologia que permite que você trabalhe com servidores de banco de dados ODBC sem carregar o mecanismo de banco de dados Microsoft Jet. O ODBCDirect depende do modelo de objeto do Microsoft DAO 3.5 e, portanto, você pode facilmente modificar o seu código de DAO existente para aproveitar as vantagens do ODBCDirect. O Microsoft DAO 3.5 inclui novos objetos, métodos e propriedades para suportar ao ODBCDirect.

Vantagens de Acessar Dados ODBC com o ODBCDirect

O ODBCDirect oferece as seguintes vantagens para as operações ODBC:

· O ODBCDirect pode tornar o seu código mais rápido e eficiente por oferecer um acesso direto às fontes de dados ODBC. Por não requerer que o mecanismo de banco de dados Microsoft Jet seja carregado, o ODBCDirect consome menos recursos no lado do cliente. O servidor ODBC é responsável por todo o processamento para consultas.

· O ODBCDirect oferece um melhor acesso a recursos específicos do servidor que não estão disponíveis pela utilização do ODBC através do Microsoft Jet. Por exemplo, para servidores que suportam especificação de cursor, o ODBCDirect permite que você especifique onde os cursores estão localizados, se localmente ou no servidor. Além disso, para interagir com procedimentos armazenados no nível do servidor, você pode especificar valores de entrada e ativar valores de retorno, que você não pode fazer quando estiver usando o Microsoft Jet.

· O ODBCDirect também suporta consultas assíncronas. Quando você executa uma consulta, você não precisa aguardar o término da execução da consulta antes de começar uma outra operação. Você pode acompanhar a execução da consulta ativando a propriedade StillExecuting.

· O ODBCDirect suporta atualização em lote, permitindo que você estabeleça localmente o cache de alterações no objeto Recordset e então submeta essas alterações ao servidor em um único lote.

· Com o ODBCDirect, você pode criar conjuntos de resultados simples e sem cursor, ou cursores mais complexos. Você também pode executar consultas que retornem qualquer número de conjuntos de resultados. Você pode limitar o número de linhas retornadas e monitorar todas as mensagens e erros gerados pela fonte de dados remotos, sem afetar o desempenho da execução da consulta.

Criando um Espaço de Trabalho do ODBCDirect

Você pode criar um espaço de trabalho do ODBCDirect especificando a constante dbUseODBC para o argumento tipo do método CreateWorkspace. Você também pode especificar que o espaço de trabalho do ODBCDirect seja, por padrão, criado pela definição da propriedade TipoPadrão do objeto DBEngine.

Depois de ter criado um espaço de trabalho do ODBCDirect, você pode utilizar objetos DAO, propriedades e métodos específicos para trabalhar com dados no servidor do banco de dados ODBC.

Vantagens de Acessar Dados ODBC com o Microsoft Jet

Os espaços de trabalho do Microsoft Jet e ODBCDirect proporcionam funcionalidades diferentes, embora complementares. Você deve utilizar um espaço de trabalho do Microsoft Jet para acessar arquivos .mdb e formatos de dados ISAM, como texto e planilhas. O Microsoft Jet proporciona capacidades exclusivas que não estão disponíveis através do ODBCDirect, incluindo as que se seguem:

· Associações atualizáveis. Você precisa utilizar um espaço de trabalho do Microsoft Jet para atualizar os dados nos objetos Recordset baseados em associações de múltiplas tabelas.

· Associações heterogêneas. Você precisa utilizar um espaço de trabalho do Microsoft Jet para realizar associações de tabelas em diferentes fontes de dados.

· Operações da Linguagem de Definição de Dados (DDL, Data Definition Language). Você precisa utilizar um espaço de trabalho do Microsoft Jet para realizar operações DDL utilizando o DAO. O ODBCDirect não oferece um objeto TableDef e, portanto, você não pode criar nem modificar tabelas utilizando o DAO. Você pode, contudo, realizar operações DDL utilizando o ODBCDirect para executar instruções DDL de SQL.

· Acoplamento de formulário e controle. Se os seus aplicativos requerem que os formulários ou controles sejam acoplados aos dados em uma fonte de dados ODBC, você precisa utilizar o Microsoft Jet. Os dados acessados dentro de um espaço de trabalho do ODBCDirect não podem ser acoplados a formulários ou controles.

Se você não precisa destas capacidades, você pode utilizar um espaço de trabalho do ODBCDirect.

Observação Você pode definir os espaços de trabalho do Microsoft Jet e do ODBCDirect nos seus aplicativos e combiná-los da maneira que quiser. Por exemplo, na mesma função, você pode definir um espaço de trabalho do Microsoft Jet para realizar operações DDL que utilizem DAO e também pode definir um espaço de trabalho do ODBCDirect para realizar consultas assíncronas.

Criando uma caixa de diálogo com guias ou um formulário de várias páginas com o controle guia

 
3) USAR ODBCDIRECT COM O MICROSOFT ACCESS

O Que é ODBCDirect?

ODBCDirect é uma tecnologia que permite que você trabalhe com servidores de banco de dados ODBC sem carregar o mecanismo de banco de dados Microsoft Jet. O ODBCDirect depende do modelo de objeto do Microsoft DAO 3.5 e, portanto, você pode facilmente modificar o seu código de DAO existente para aproveitar as vantagens do ODBCDirect. O Microsoft DAO 3.5 inclui novos objetos, métodos e propriedades para suportar ao ODBCDirect.

Vantagens de Acessar Dados ODBC com o ODBCDirect

O ODBCDirect oferece as seguintes vantagens para as operações ODBC:

· O ODBCDirect pode tornar o seu código mais rápido e eficiente por oferecer um acesso direto às fontes de dados ODBC. Por não requerer que o mecanismo de banco de dados Microsoft Jet seja carregado, o ODBCDirect consome menos recursos no lado do cliente. O servidor ODBC é responsável por todo o processamento para consultas.

· O ODBCDirect oferece um melhor acesso a recursos específicos do servidor que não estão disponíveis pela utilização do ODBC através do Microsoft Jet. Por exemplo, para servidores que suportam especificação de cursor, o ODBCDirect permite que você especifique onde os cursores estão localizados, se localmente ou no servidor. Além disso, para interagir com procedimentos armazenados no nível do servidor, você pode especificar valores de entrada e ativar valores de retorno, que você não pode fazer quando estiver usando o Microsoft Jet.

· O ODBCDirect também suporta consultas assíncronas. Quando você executa uma consulta, você não precisa aguardar o término da execução da consulta antes de começar uma outra operação. Você pode acompanhar a execução da consulta ativando a propriedade StillExecuting.

· O ODBCDirect suporta atualização em lote, permitindo que você estabeleça localmente o cache de alterações no objeto Recordset e então submeta essas alterações ao servidor em um único lote.

· Com o ODBCDirect, você pode criar conjuntos de resultados simples e sem cursor, ou cursores mais complexos. Você também pode executar consultas que retornem qualquer número de conjuntos de resultados. Você pode limitar o número de linhas retornadas e monitorar todas as mensagens e erros gerados pela fonte de dados remotos, sem afetar o desempenho da execução da consulta.

Criando um Espaço de Trabalho do ODBCDirect

Você pode criar um espaço de trabalho do ODBCDirect especificando a constante dbUseODBC para o argumento tipo do método CreateWorkspace. Você também pode especificar que o espaço de trabalho do ODBCDirect seja, por padrão, criado pela definição da propriedade TipoPadrão do objeto DBEngine.

Depois de ter criado um espaço de trabalho do ODBCDirect, você pode utilizar objetos DAO, propriedades e métodos específicos para trabalhar com dados no servidor do banco de dados ODBC.

Vantagens de Acessar Dados ODBC com o Microsoft Jet

Os espaços de trabalho do Microsoft Jet e ODBCDirect proporcionam funcionalidades diferentes, embora complementares. Você deve utilizar um espaço de trabalho do Microsoft Jet para acessar arquivos .mdb e formatos de dados ISAM, como texto e planilhas. O Microsoft Jet proporciona capacidades exclusivas que não estão disponíveis através do ODBCDirect, incluindo as que se seguem:

· Associações atualizáveis. Você precisa utilizar um espaço de trabalho do Microsoft Jet para atualizar os dados nos objetos Recordset baseados em associações de múltiplas tabelas.

· Associações heterogêneas. Você precisa utilizar um espaço de trabalho do Microsoft Jet para realizar associações de tabelas em diferentes fontes de dados.

· Operações da Linguagem de Definição de Dados (DDL, Data Definition Language). Você precisa utilizar um espaço de trabalho do Microsoft Jet para realizar operações DDL utilizando o DAO. O ODBCDirect não oferece um objeto TableDef e, portanto, você não pode criar nem modificar tabelas utilizando o DAO. Você pode, contudo, realizar operações DDL utilizando o ODBCDirect para executar instruções DDL de SQL.

· Acoplamento de formulário e controle. Se os seus aplicativos requerem que os formulários ou controles sejam acoplados aos dados em uma fonte de dados ODBC, você precisa utilizar o Microsoft Jet. Os dados acessados dentro de um espaço de trabalho do ODBCDirect não podem ser acoplados a formulários ou controles.

Se você não precisa destas capacidades, você pode utilizar um espaço de trabalho do ODBCDirect.

Observação Você pode definir os espaços de trabalho do Microsoft Jet e do ODBCDirect nos seus aplicativos e combiná-los da maneira que quiser. Por exemplo, na mesma função, você pode definir um espaço de trabalho do Microsoft Jet para realizar operações DDL que utilizem DAO e também pode definir um espaço de trabalho do ODBCDirect para realizar consultas assíncronas.

4) Configurar fontes de dados ODBC

Se você instalou o driver ODBC para o Microsoft SQL Server ou outros drivers ODBC quando executou o Programa de Instalação, pode configurar novas fontes de dados ou modificar fontes de dados existentes.

1 No Microsoft Windows 95 ou no Microsoft NT Workstation 4.0, clique no botão Iniciar do Windows, aponte para Configurações, clique em Painel de Controle e, em seguida, clique duas vezes no ícone 32bit ODBC (denominado ícone ODBC no Microsoft NT Workstation 4.0).

No Microsoft Windows NT Workstation 3.51, clique duas vezes no ícone ODBC no Painel de Controle.

2 Proceda de uma das maneiras a seguir:

· Para definir uma nova fonte de dados para um driver atualmente instalado, clique em Adicionar.

· Para modificar a configuração de uma fonte de dados existente, clique em um nome na lista Fontes de Dados do Usuário (Driver) e, em seguida, clique em Configurar.

3 Complete as caixas de diálogo Para obter maiores informações sobre as diferentes opções, clique no botão Ajuda em cada caixa de diálogo.

 

5) Configuring the Microsoft Jet Database Engine for ODBC Access

The following sections describe Windows registry settings settings for the Microsoft Jet database engine for connection to an ODBC database. These registry settings must be added by the user or by your application; the ODBC Driver Setup program does not write default values to the \HKEY_LOCAL_MACHINE\Software\Microsoft\Access\7.0\Jet\3.5\Engines\ODBC folder.

Initialization Settings for Jet-connected ODBC Databases

The \HKEY_LOCAL_MACHINE\Software\Microsoft\Access\7.0\Jet\3.5\Engines\ODBC folder contains initialization settings for the Microsoft Jet database engine. Before you can add any of the following values to the registry, you must create the ODBC folder under the Jet\3.5\Engines folder.

To create the new folder, open the Jet\3.5\Engines folder in the Registry Editor and click Add Key on the Edit menu. In the Key Name: edit box, type ODBC and click OK. The Registry Editor creates a new folder below the Jet\3.5\Engines folder.

Note If you are using Windows NT, the Add Key dialog box also contains an edit box for the registry key class; you can leave this setting blank.

Typical settings for the entries in the Jet\3.5\Engines\ODBC folder are shown in the following example.

LoginTimeout=20

QueryTimeout=60

ConnectionTimeout=600

AsyncRetryInterval=500

AttachCaseSensitive=0

AttachableObjects='TABLE','VIEW','SYSTEM TABLE','ALIAS','SYNONYM'

SnapshotOnly=0

TraceSQLMode=0

TraceODBCAPI=0

DisableAsync=0

JetTryAuth=1

PreparedInsert=0

PreparedUpdate=0

FastRequery=0

The Jet database engine uses the ODBC entries as follows.

Entry Description

LoginTimeout The number of seconds a login attempt can continue before timing out. The default is 20 (values are of type REG_DWORD).

QueryTimeout The number of seconds a query can run (total processing time) before timing out. The default is 60 (values are of type REG_DWORD).

ConnectionTimeout The number of seconds a cached connection can remain idle before timing out. The default is 600 (values are of type REG_DWORD).

AsyncRetryInterval The number of milliseconds between polls to determine if the server is done processing a query. This entry is used for asynchronous processing only. The default is 500 (values are of type REG_DWORD).

AttachCaseSensitive An indicator of whether to match table names exactly when linking. Values are 0 (link the first table matching the specified name, regardless of case) and 1 (link a table only if the name matches exactly). The default is 0 (values are of type REG_DWORD).

AttachableObjects A list of server object types to which linking will be allowed. The default is: 'TABLE', 'VIEW', 'SYSTEM TABLE', 'ALIAS', 'SYNONYM' (values are of type REG_SZ).

SnapshotOnly An indicator of whether Recordset objects are forced to be of snapshot type. Values are 0 (allow dynasets) and 1 (force snapshots only). The default is 0 (values are of type REG_DWORD).

TraceSQLMode An indicator of whether the Jet database engine will trace SQL statements sent to an ODBC data source in SQLOUT.txt. Values are 0 (no) and 1 (yes). The default is 0 (values are of type REG_DWORD). This entry is interchangeable with SQLTraceMode.

TraceODBCAPI An indicator of whether to trace ODBC API calls in ODBCAPI.txt. Values are 0 (no) and 1 (yes). The default is 0 (values are of type REG_DWORD).

DisableAsync An indicator of whether to force synchronous query execution. Values are 0 (use asynchronous query execution if possible) and 1 (force synchronous query execution). The default is 1 (values are of type REG_DWORD).

JetTryAuth An indicator of whether to try using the Microsoft Access user name and password to log in to the server before prompting. Values are 0 (no) and 1 (yes). The default is 1 (values are of type REG_DWORD).

PreparedInsert An indicator of whether to use a prepared INSERT statement that inserts data in all columns. Values are 0 (use a custom INSERT statement that inserts only non-Null values) and 1 (use a prepared INSERT statement). The default is 0 (values are of type REG_DWORD).Using prepared INSERT statements can cause Nulls to overwrite server defaults and can cause triggers to execute on columns that weren't inserted explicitly.

PreparedUpdate An indicator of whether to use a prepared UPDATE statement that updates data in all columns. Values are 0 (use a custom UPDATE statement that sets only columns that have changed) and 1 (use a prepared UPDATE statement). The default is 0 (values are of type REG_DWORD).Using prepared UPDATE statements can cause triggers to execute on unchanged columns.

FastRequery An indicator of whether to use a prepared SELECT statement for parameterized queries. Values are 0 (no) and 1 (yes). The default is 0 (values are of type REG_DWORD).

 

6) Construtor de seqüências de conexão ODBC

Uma ferramenta do Microsoft Access que você pode utilizar para conectar-se a um banco de dados SQL ao criar uma consulta passagem. Se você salvar a consulta, a seqüência de conexão será armazenada com a mesma.

 

7) Criar a seqüência de conexão ODBC para uma consulta passagem SQL

1 Abra uma consulta passagem.

2 Clique em Propriedades na barra de ferramentas, para exibir a folha de propriedades da consulta.

3 Na folha de propriedades da consulta, clique em Construir à direita da caixa de propriedade Seqüência de Conexão ODBC e, em seguida, insira informações sobre o servidor ao qual você está conectado.

4 Quando você for solicitado a salvar a senha na seqüência de conexão, selecione Sim se desejar que a senha e o logon sejam armazenados nas informações da seqüência de conexão.

Observação A seqüência de conexão ODBC padrão é "ODBC;". Após criar a seqüência de conexão ODBC, o construtor insere uma nova seqüência na propriedade Seqüência de Conexão ODBC, na folha de propriedades da consulta.

 

8) Fonte de Dados ODBC

Os dados e as informações necessárias para acessar esses dados a partir de programas e bancos de dados que suportam o protocolo ODBC (Open Database Connectivity). Isso inclui, mas não se limita, ao Microsoft SQL Server. Por exemplo, uma fonte de dados SQL Server é o banco de dados SQL Server, o servidor no qual ele reside e as informações de rede necessárias para acessar esse servidor. As informações exigidas para definir uma fonte de dados ODBC variam dependendo das exigências de seu driver ODBC. Você deve criar uma definição de fonte de dados para cada banco de dados ODBC que deseja importar, exportar ou vincular no Microsoft Access.

 

9) Personalizar as configurações do driver ODBC

1 Inicie o Editor de Registro.

(Veja como, abaixo)

2 Navegue até a chave \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.5\Engines\ODBC e faça as alterações desejadas.

3 Saia do Editor de Registro.

4 Saia e reinicie o Microsoft Access para utilizar as novas configurações.

Importante As alterações nas configurações desta chave afetarão todos os programas instalados no computador que utilizam o mecanismo de banco de dados Microsoft Jet para acessar bancos de dados ODBC. Além do Microsoft Access 97, inclui o Microsoft Excel 97, o Visual Basic 4.0 ou posterior, o Visual C++ 4.0 ou posterior e possivelmente outros. Para fazer alterações que se apliquem somente ao Microsoft Access 97, navegue até a chave \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\8.0\Access\Jet\3.5\Engines\ODBC e, em seguida, modifique os valores ali. Se a chave \ODBC não existir, crie-a e adicione os valores.

Observação Você também pode utilizar o método do Objetos de Acesso a Dados (DAO), DBEngine.SetOption, para modificar dinamicamente os valores de registros do Microsoft Jet em tempo de execução para uma única sessão, sem modificar de forma permanente os valores no Registro do Windows.

 

10) Método SetOption

Define novos valores para as chaves do mecanismo de banco de dados Microsoft Jet do Registro do Windows (somente espaço de trabalho do Microsoft Jet).

Sintaxe

DBEngine.SetOption parâmetro, novovalor

A sintaxe do método SetOption possui as partes a seguir:

Parte Descrição

parâmetro Uma constante Long, conforme descrito em "Configurações".

novovalor Um valor Variant com o qual deseja definir parâmetro.

Configurações

Cada constante se refere à chave de registro correspondente no caminho Jet\3.5\Engines\Jet 3.5\ (ou seja, dbSharedAsyncDelay corresponde à chave Jet\3.5\Engines\Jet 3.5\SharedAsyncDelay, e assim sucessivamente).

Constante Descrição

dbPageTimeout A chave PageTimeout

dbSharedAsyncDelay A chave SharedAsyncDelay

dbExclusiveAsyncDelay A chave ExclusiveAsyncDelay

dbLockRetry A chave LockRetry

dbUserCommitSync A chave UserCommitSync

dbImplicitCommitSync A chave ImplicitCommitSync

dbMaxBufferSize A chave MaxBufferSize

dbMaxLocksPerFile A chave MaxLocksPerFile

dbLockDelay A chave LockDelay

dbRecycleLVs A chave RecycleLVs

dbFlushTransactionTimeout A chave FlushTransactionTimeout

Comentários

Use o método SetOption para substituir valores de registro em tempo de execução. Novos valores estabelecidos com o método SetOption permanecem efetivos até que sejam novamente alterados por outra chamada SetOption ou até que o objeto DBEngine seja fechado.

Para saber mais detalhes sobre o que as chaves de registro fazem e os valores apropriados para defini-las, consulte Inicializando o Mecanismo de Banco de Dados Microsoft Jet 3.5.

EXEMPLO:

Este exemplo utiliza o método SetOption para alterar o valor de duas chaves de registro baseado na entrada do usuário. O método SetOption apenas substitui os valores de registro armazenados do aplicativo atual. As configurações armazenadas permanecerão inalteradas e serão os únicos valores visíveis para o usuário através de REGEDIT.EXE.

Sub SetOptionX()

Dim intExclusiveDelay As Integer

Dim intSharedDelay As Integer

' Obtém entrada do usuário para novos valores das

' chaves de registro ExclusiveAsyncDelay e

' SharedAsyncDelay.

intExclusiveDelay = Val(InputBox("Insira um novo valor " & _

" para a chave de registro ExclusiveAsyncDelay " & _

"(em milissegundos):"))

intSharedDelay = Val(InputBox("Insira um novo valor " & _

"para a chave de registro SharedAsyncDelay " & _

"(em milissegundos):"))

If intExclusiveDelay > 0 And intSharedDelay > 0 Then

' Altera os valores das chaves de registro.

SetOption dbExclusiveAsyncDelay, intExclusiveDelay

SetOption dbSharedAsyncDelay, intSharedDelay

MsgBox "Chaves de registro alteradas para novos valores " & _

"para duração do programa."

Else

MsgBox "As chaves de registro permaneceram inalteradas."

End If

End Sub

 

11) Utilizar o Editor de Registro

Cuidado Várias definições do Registro do Microsoft Access são adicionadas automaticamente quando você instala o programa. A alteração das definições instaladas pode produzir resultados inesperados, o que pode tornar necessária uma nova instalação do Microsoft Access. É altamente recomendável que você não altere as definições no Registro do Windows. Entretanto, se você precisar alterar as definições ou opções do Registro, utilize o Editor de Registro do Windows e altere somente aquelas definições ou opções que estiverem explicitamente documentadas. As definições revisadas entrarão em vigor na próxima vez em que você iniciar o Microsoft Access. É recomendável que você faça um backup do Registro ou, pelo menos, da parte que será editada. Para obter informações, procure "efetuando o backup do Registro" no índice da Ajuda on-line do Editor de Registro (disponível na barra de menu do Editor de Registro).

1 Para executar o Editor de Registro no Windows 95, clique no botão Iniciar do Windows, clique em Executar, digite regedit e, em seguida, clique em OK.

Para executar o Editor de Registro no Windows NT Workstation, no Gerenciador de Programas ou no Gerenciador de Arquivos, clique em Executar no menu Arquivo, digite regedt32 e, em seguida, clique em OK.

2 Clique duas vezes nos ícones-chave para navegar até a chave do Registro adequada. As duas chaves principais que contêm definições que afetam o Microsoft Access são:

· \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\8.0\Access

· \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.5

Se houver um sinal de adição (+) à esquerda da chave, a chave do registro conterá chaves adicionais. Para editar o(s) valor(es) de uma chave de registro, clique duas vezes na chave no painel esquerdo da janela do Editor de Registro para abri-la e clique duas vezes no valor que deseja editar no painel direito da janela do Editor de Registro. Em alguns casos, pode ser necessário adicionar novas chaves ou valores. Para obter informações sobre como adicionar novas chaves e valores, utilize a Ajuda on-line do Editor de Registro.

Importante As chaves exibidas abaixo da chave \Microsoft\Office\8.0\Access aplicam-se somente ao Microsoft Access 8.0. As chaves que são mostradas abaixo da chave \Microsoft\Jet\3.5 aplicam-se ao mecanismo de banco de dados Microsoft Jet que o Microsoft Access utiliza para acesso a dados. As alterações em qualquer uma dessas definições afetam o Microsoft Access 97 e afetarão outros programas que utilizam o mecanismo de banco de dados Microsoft Jet, como o Microsoft Excel 97, o Visual Basic 4.0 ou posterior, o Visual C++ 4.0 ou posterior e possivelmente outros programas. Para fazer alterações nas definições do mecanismo de banco de dados Microsoft Jet que afetam somente o Microsoft Access, altere as definições na chave \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\8.0\Access\Jet\3.5.

 

12) Sobre instalação de drivers ODBC

Você pode instalar o driver para o Microsoft SQL Server utilizando o Programa de Instalação e, em seguida, utilizar o gerenciador de ODBC para especificar fontes de dados. Você pode, também, utilizar o gerenciador de ODBC para especificar fontes de dados para outros drivers ODBC instalados.

Instalando o driver para o Microsoft SQL Server fornecido com o Microsoft Access

Quando você instalou o Microsoft Access, pode ter escolhido instalar o suporte ODBC e o driver para o Microsoft SQL Server em sua estação de trabalho. Se não fez isso, ou se tiver escolhido a instalação Típica, terá que executar novamente o Programa de Instalação e optar por acrescentar um desses componentes. Depois que o driver estiver instalado, você ainda precisa configurar fontes de dados.

(Veja abaixo)

Instalando outros drivers ODBC que não o Microsoft SQL Server

Para instalar outros drivers que não o Microsoft SQL Server, você precisa obter os arquivos e a documentação para esse driver ODBC junto ao revendedor do formato dos dados. Cada driver ODBC possui requisitos específicos para instalação e configuração de fontes de dados. Consulte a documentação do driver para obter maiores informações.

 

13) Configurar fontes de dados ODBC

Se você instalou o driver ODBC para o Microsoft SQL Server ou outros drivers ODBC quando executou o Programa de Instalação, pode configurar novas fontes de dados ou modificar fontes de dados existentes.

1 No Microsoft Windows 95 ou no Microsoft NT Workstation 4.0, clique no botão Iniciar do Windows, aponte para Configurações, clique em Painel de Controle e, em seguida, clique duas vezes no ícone 32bit ODBC (denominado ícone ODBC no Microsoft NT Workstation 4.0).

No Microsoft Windows NT Workstation 3.51, clique duas vezes no ícone ODBC no Painel de Controle.

2 Proceda de uma das maneiras a seguir:

· Para definir uma nova fonte de dados para um driver atualmente instalado, clique em Adicionar.

· Para modificar a configuração de uma fonte de dados existente, clique em um nome na lista Fontes de Dados do Usuário (Driver) e, em seguida, clique em Configurar.

3 Complete as caixas de diálogo Para obter maiores informações sobre as diferentes opções, clique no botão Ajuda em cada caixa de diálogo.

 

14) Instalar drivers para bancos de dados internos

1 Execute novamente o Programa de Instalação e, em seguida, clique em Adicionar/Remover.

2 Selecione Acesso a Dados e, em seguida, clique em Alterar Opção.

3 Selecione Drivers para Bancos de Dados e, em seguida, clique em Alterar Opção.

4 Selecione os drivers que você deseja instalar e, em seguida, clique duas vezes em OK.

5 Clique em Continuar e siga as instruções nas demais caixas de diálogo do Programa de Instalação.

Observação Os drivers para o Lotus 1-2-3, Paradox e Microsoft Exchange/Outlook não estão incluídos no Programa de Instalação, mas estão disponíveis pelo Office 97 ValuPack.
 

15) Instalar o Driver para o Microsoft Access

Para acessar um banco de dados do Microsoft Access a partir de seu aplicativo da World Wide Web executando no Microsoft Internet Information Server ou Microsoft Personal Web Server, você deverá instalar o driver para o Microsoft Access (Odbcjt32.dll) na máquina do servidor da Web.

Ao executar o Programa de Instalação para o Microsoft Internet Information Server, você poderá instalar este driver, selecionando a opção ODBC Drivers e Administração. Entretanto, o Microsoft Personal Web Server não contém o driver para o Microsoft Access.

Para instalar o driver para o Microsoft Access em ambos os servidores:

1 Execute o Microsoft Office Professional ou o Programa de Instalação do Microsoft Access.

2 Se estiver executando a Instalação pela primeira vez, clique em Personalizada.

Se não estiver executando a Instalação pela primeira vez, clique em Adicionar/Remover.

3 Selecione Data Access And ActiveX Controls e clique em Alterar Opção.

4 Selecione Database Drivers e clique em Alterar Opção.

5 Selecione Microsoft Access Driver e clique em OK.

6 Clique em Continuar e siga as instruções contidas nas demais caixas de diálogo da Instalação.

 

16) Usar ODBCDirect com o Microsoft Access

O Que é ODBCDirect?

ODBCDirect é uma tecnologia que permite que você trabalhe com servidores de banco de dados ODBC sem carregar o mecanismo de banco de dados Microsoft Jet. O ODBCDirect depende do modelo de objeto do Microsoft DAO 3.5 e, portanto, você pode facilmente modificar o seu código de DAO existente para aproveitar as vantagens do ODBCDirect. O Microsoft DAO 3.5 inclui novos objetos, métodos e propriedades para suportar ao ODBCDirect.

Vantagens de Acessar Dados ODBC com o ODBCDirect

O ODBCDirect oferece as seguintes vantagens para as operações ODBC:

· O ODBCDirect pode tornar o seu código mais rápido e eficiente por oferecer um acesso direto às fontes de dados ODBC. Por não requerer que o mecanismo de banco de dados Microsoft Jet seja carregado, o ODBCDirect consome menos recursos no lado do cliente. O servidor ODBC é responsável por todo o processamento para consultas.

· O ODBCDirect oferece um melhor acesso a recursos específicos do servidor que não estão disponíveis pela utilização do ODBC através do Microsoft Jet. Por exemplo, para servidores que suportam especificação de cursor, o ODBCDirect permite que você especifique onde os cursores estão localizados, se localmente ou no servidor. Além disso, para interagir com procedimentos armazenados no nível do servidor, você pode especificar valores de entrada e ativar valores de retorno, que você não pode fazer quando estiver usando o Microsoft Jet.

· O ODBCDirect também suporta consultas assíncronas. Quando você executa uma consulta, você não precisa aguardar o término da execução da consulta antes de começar uma outra operação. Você pode acompanhar a execução da consulta ativando a propriedade StillExecuting.

· O ODBCDirect suporta atualização em lote, permitindo que você estabeleça localmente o cache de alterações no objeto Recordset e então submeta essas alterações ao servidor em um único lote.

· Com o ODBCDirect, você pode criar conjuntos de resultados simples e sem cursor, ou cursores mais complexos. Você também pode executar consultas que retornem qualquer número de conjuntos de resultados. Você pode limitar o número de linhas retornadas e monitorar todas as mensagens e erros gerados pela fonte de dados remotos, sem afetar o desempenho da execução da consulta.

Criando um Espaço de Trabalho do ODBCDirect

Você pode criar um espaço de trabalho do ODBCDirect especificando a constante dbUseODBC para o argumento tipo do método CreateWorkspace. Você também pode especificar que o espaço de trabalho do ODBCDirect seja, por padrão, criado pela definição da propriedade TipoPadrão do objeto DBEngine.

Depois de ter criado um espaço de trabalho do ODBCDirect, você pode utilizar objetos DAO, propriedades e métodos específicos para trabalhar com dados no servidor do banco de dados ODBC.

Vantagens de Acessar Dados ODBC com o Microsoft Jet

Os espaços de trabalho do Microsoft Jet e ODBCDirect proporcionam funcionalidades diferentes, embora complementares. Você deve utilizar um espaço de trabalho do Microsoft Jet para acessar arquivos .mdb e formatos de dados ISAM, como texto e planilhas. O Microsoft Jet proporciona capacidades exclusivas que não estão disponíveis através do ODBCDirect, incluindo as que se seguem:

· Associações atualizáveis. Você precisa utilizar um espaço de trabalho do Microsoft Jet para atualizar os dados nos objetos Recordset baseados em associações de múltiplas tabelas.

· Associações heterogêneas. Você precisa utilizar um espaço de trabalho do Microsoft Jet para realizar associações de tabelas em diferentes fontes de dados.

· Operações da Linguagem de Definição de Dados (DDL, Data Definition Language). Você precisa utilizar um espaço de trabalho do Microsoft Jet para realizar operações DDL utilizando o DAO. O ODBCDirect não oferece um objeto TableDef e, portanto, você não pode criar nem modificar tabelas utilizando o DAO. Você pode, contudo, realizar operações DDL utilizando o ODBCDirect para executar instruções DDL de SQL.

· Acoplamento de formulário e controle. Se os seus aplicativos requerem que os formulários ou controles sejam acoplados aos dados em uma fonte de dados ODBC, você precisa utilizar o Microsoft Jet. Os dados acessados dentro de um espaço de trabalho do ODBCDirect não podem ser acoplados a formulários ou controles.

Se você não precisa destas capacidades, você pode utilizar um espaço de trabalho do ODBCDirect.

Observação Você pode definir os espaços de trabalho do Microsoft Jet e do ODBCDirect nos seus aplicativos e combiná-los da maneira que quiser. Por exemplo, na mesma função, você pode definir um espaço de trabalho do Microsoft Jet para realizar operações DDL que utilizem DAO e também pode definir um espaço de trabalho do ODBCDirect para realizar consultas assíncronas.

17) Propriedade ODBCConnectStr (SeqüênciaDeConexãoODBC)

Você pode utilizar a propriedade SeqüênciaDeConexãoODBC em uma consulta passagem SQL para especificar a seqüência de conexão ODBC para a consulta.

Observação A propriedade SeqüênciaDeConexãoODBC só se aplica a consultas passagem.

Definição

Insira a SeqüênciaDeConexãoODBC que define a conexão ao banco de dados SQL que você deseja utilizar.

Você pode definir essa propriedade utilizando a folha de propriedades da consulta ou o Visual Basic.

Você pode também utilizar o Construtor de Seqüências de Conexão ODBC para criar a SeqüênciaDeConexãoODBC para essa propriedade. Esse construtor estabelece uma conexão ao servidor de banco de dados SQL e, em seguida, finaliza a conexão depois da SeqüênciaDeConexãoODBC ser criada.

Comentários

A definição padrão para essa propriedade é a seqüência "ODBC;", que o Microsoft Access restaura quando você exclui uma definição existente. Quando a propriedade Seqüência de Conexão ODBC estiver definida como "ODBC;", o Microsoft Access pedirá a você uma seqüência de conexão sempre que a consulta for utilizada, mas não armazenará a seqüência de conexão. Você precisa inserir uma seqüência de conexão na caixa da propriedade Seqüência de Conexão ODBC se desejar que o Microsoft Access armazene a seqüência de conexão.

Dica Se você conhece a seqüência de conexão completa para o banco de dados SQL, insira-a na caixa da propriedade Seqüência de Conexão ODBC. Dessa forma, não será necessário inserir a seqüência de conexão na caixa de diálogo de conexão ODBC cada vez que utilizar a consulta.

A seqüência de conexão é diferente para tipos de fontes de dados ODBC diferentes. Por exemplo, para conectar-se à fonte de dados Recursos Humanos no servidor SRVDRH (um Microsoft SQL Server), utilizando a identificação de logon (ID) Silva e a senha Sesamo, você pode utilizar a seqüência de conexão a seguir.

ODBC;NFD=Recursos Humanos;SERVER=SRVDRH;UID=Silva;PWD=Sesamo

Para obter maiores informações sobre como acessar dados em bancos de dados ODBC, consulte o capítulo 18, "Acessando dados externos", em Criando Aplicativos com o Microsoft Access 97.
 

Ribamar FS    ribafs@yahoo.com
24/12/1999