Aprender DAO VBA

Criar um Conjunto de Registros de DAO a partir de uma tabela no banco de dados atual

O exemplo de código a seguir usa o método OpenRecordsetO exemplo de código a seguir usa o método Recordset do tipo tabela para uma tabela no banco de dados atual.

Criar um Conjunto de Registros de DAO a partir de um formulário

Você pode criar um objeto Recordset com base em um formulário do Access. Para fazer isso, use a propriedade RecordsetClone do formulário. Ela cria um Recordset do tipo dynaset que faz referência à mesma consulta de base ou aos mesmos dados do formulário.

Criar um conjunto de registros de DAO usando uma consulta

Descreve como criar um objeto Recordset com base em uma consulta seleção armazenada. No exemplo código a seguir, Current Product List é uma seleção de consulta existente no banco de dados atual.

Adicionar um registro a um Conjunto de Registros de DAO

Você pode adicionar um novo registro a um objeto Recordset do tipo tabela ou dynaset usando o método AddNew.

Percorrer um conjunto de registros de DAO

Um objeto ** conjunto de registros ** geralmente não tem uma posição atual, geralmente em um registro. Quando você se referir aos campos em um conjunto de registros, você obtém valores de registro na posição atual, conhecida como registro atual. No entanto, a posição atual também pode ser imediatamente antes do primeiro registro em um conjunto de registros ou imediatamente após o último registro. Em determinadas circunstâncias é indefinida a posição atual.

Localizar um registro em um Conjunto de Registros de DAO do tipo dynaset ou snapshot

Você pode usar os métodos find para localizar um registro em um objeto Recordset do tipo dynaset ou instantâneo.

Localizar um registro em um conjunto de registros de DAO de tipo tabela

Você usa o método Seek para localizar um registro em um objeto Recordset do tipo tabela. Quando você usa o método Seek para localizar um registro, o mecanismo de banco de dados do Access usa o índice atual da tabela, conforme definido pela propriedade Index.

Modificar um registro existente em um conjunto de registros de DAO

Você pode modificar registros existentes em um objeto Recordset do tipo tabela ou tipo dynaset usando os métodos Edit e Update.

Ler e gravar em um campo em um Conjunto de Registros de DAO

Ao ler ou gravar dados em um campo, você está, na verdade, lendo ou definindo a propriedade DAO Value de um objeto Field. A propriedade DAO Value é a propriedade padrão de um objeto Field. Portanto, você pode definir a propriedade Value do DAO do campo LastName no Recordset rstEmployees de qualquer uma das seguintes maneiras.

Contar o número de registros em um Conjunto de Registros de DAO

Você pode querer saber o número de registros em um objeto Recordset. Por exemplo, talvez você queira criar um formulário que mostre quantos registros há em cada uma das tabelas de um banco de dados. Ou talvez queira alterar a aparência de um formulário ou relatório com base no número de registros nele contido.

Excluir um registro de um Conjunto de Registros de DAO

Você pode excluir um registro existente em um objeto Recordset do tipo dynaset ou tabela usando o método Delete. Você não pode excluir registros de um objeto Recordset do tipo instantâneo.

Sincronizar um registro do Conjunto de Registros de DAO com o registro atual de um formulário

O exemplo de código a seguir usa a propriedade RecordsetClone e o objeto Recordset para sincronizar o registro de um conjunto de registros com o registro atual do formulário.

Detectar os limites de um Conjunto de Registros de DAO

Em um objeto Recordset, se você tentar se mover além do registro inicial ou final, ocorrerá um erro em tempo de execução. Por exemplo, se você tentar usar o método MoveNext quando já estiver no último registro do Recordset, ocorrerá um erro interceptável. Por esse motivo, é útil saber os limites do objeto Recordset.

Extrair dados de um registro em um Conjunto de Registros de DAO

Depois de localizar um registro específico, talvez você queira extrair dados para usar em um aplicativo, em vez de modificar a tabela de origem de base.

Localizar a posição atual em um Conjunto de Registros de DAO

Em algumas situações, você precisa determinar o quanto através de um objeto Recordset você moveu a posição do registro atual e talvez indicar a posição do registro atual para um usuário. Por exemplo, você pode indicar a posição atual em um mostrador, medidor ou tipo de controle semelhante. Duas propriedades estão disponíveis para indicar a posição atual: a propriedade AbsolutePosition e a propriedade PercentPosition.

Marcar uma posição em um Conjunto de Registros de DAO

Um marcador é uma matriz de bytes gerada pelo sistema que identifica exclusivamente cada registro. A propriedade DAO Bookmark de um objeto Recordset muda cada vez que você move para um novo registro. Para identificar um registro, vá até ele e atribua o valor da propriedade Bookmark do DAO a uma variável do tipo Variante. Para retornar o registro, defina a propriedade Bookmark do DAO como o valor da variável.

Fazer alterações em massa a um Conjunto de Registros de DAO

Depois de criar um objeto Recordset do tipo tabela ou dynaset, você pode alterar, excluir ou adicionar novos registros. Não é possível alterar, excluir nem adicionar registros em um objeto Recordset do tipo instantâneo ou apenas encaminhamento.

Classificar dados em um Conjunto de Registros de DAO

A menos que você abra um objeto Recordset do tipo tabela e defina sua propriedade Index, não será possível certificar-se de que os registros aparecerão em qualquer ordem específica. No entanto, normalmente convém recuperar registros em uma ordem específica. Por exemplo, talvez você queira exibir faturas organizadas por uma numeração crescente ou recuperar registros dos funcionários em ordem alfabética. Para ver os registros em uma ordem específica, classifique-os.

Usar transações em um Conjunto de Registros de DAO

Uma transação é um conjunto de operações agrupadas e tratados como uma única unidade de trabalho. O trabalho em uma transação que deve ser concluído como um todo; Se qualquer parte da transação falhar, toda a transação falha. As transações oferecem ao desenvolvedor a capacidade de impor integridade dos dados. Com vários operações de banco de dados agrupadas em uma única unidade que deve falhar ou obter êxito como um todo, o banco de dados não atingirá um estado inconsistente. As transações são comuns a maioria dos sistemas de gerenciamento de banco de dados.

Trabalhar com anexos no DAO

No DAO, os campos de anexo funcionam como outros campos de valores múltiplos. O campo que contém o anexo contém um conjunto de registros filho do conjunto de registros da tabela. Há dois métodos DAO novos LoadFromFile e SaveToFile, que trabalham exclusivamente com anexos.

Manipular campos de múltiplos valores com DAO

Os campos com valores múltiplos são representados como objetos Recordset no DAO. O conjunto de registros de um campo é um filho do conjunto de registros da tabela que contém o campo de vários valores. Para instanciar o Recordset filho, use a propriedade Value do campo de valores múltiplos da seguinte maneira.