Como usar o método Seek com ActiveX Data Objects (ADO) contra um conjunto de registros Jet

Support for Office 2003 has ended

Microsoft ended support for Office 2003 on April 8, 2014. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 287638
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Avançadas: Requer especialista de codificação, interoperabilidade e habilidades de multiusuário.

Este artigo se aplica somente a um banco de dados do Microsoft Access (.mdb).

Para uma versão deste artigo do Microsoft Access 2000, consulte 243465.
Sumário
Este artigo mostra como usar o método Seek com um ActiveX Data Objects (ADO) conjunto de registros.

Microsoft fornece exemplos de programação apenas para ilustração, sem garantia expressa ou implícita. Isso inclui, mas não está limitado a, garantias implícitas de comercialização ou adequação para uma finalidade específica. Este artigo presume que você está familiarizados com a linguagem de programação que está sendo demonstrada e com as ferramentas que são usadas para criar e depurar procedimentos. Engenheiros de suporte podem ajudar a explicar a funcionalidade de um determinado procedimento, mas eles não modificarão esses exemplos para fornecer funcionalidades adicionais ou construir procedimentos para atender às suas necessidades.
Mais Informações
O exemplo a seguir mostra como usar o método Seek para localizar um pedido de cliente com um determinado código do pedido e identificação do produto. Se a ordem for encontrada, o exemplo imprime a quantidade da ordem de cliente na janela Verificação imediata.

Normalmente, você pode escolher entre usar uma biblioteca de cursor do lado do cliente ou um que está localizado no servidor. Em ordem para o método Seek funcione, você deve usar um cursor do lado do servidor, como indicado na propriedade CursorLocation .

Além disso, você pode usar o método Seek somente quando um conjunto de registros está acessando diretamente a tabela. Neste exemplo, o conjunto de registros é instruído a acessar a tabela diretamente pelo argumento adCmdTableDirect no método Open . Você não pode usar o método Seek em objetos como consultas e tabelas vinculadas. Você pode usar o método Seek somente em tabelas nativas do Microsoft Jet. Se o seu banco de dados contém tabelas vinculadas, você pode abrir uma conexão externa ao banco de dados back-end que armazena a tabela e, em seguida, use o método Seek diretamente na tabela.
  1. Criar um novo banco de dados Microsoft Access e denomine Db1.mdb.
  2. Clique em módulos em objetos e, em seguida, clique em novo .
  3. No menu Ferramentas , clique em referências . Certifique-se de que o Microsoft ActiveX Data Objects 2. x biblioteca está incluído na caixa Referências disponíveis (onde 2. x é a versão 2.1 ou posterior).
  4. No novo módulo, digite ou cole o código a seguir:
    Option Compare DatabaseOption ExplicitFunction SeekRecord()    Dim conn As ADODB.Connection    Dim rst As ADODB.Recordset    Set conn = New ADODB.Connection    Set rst = New ADODB.Recordset    'Set the connection properties and open the connection.    With conn        .Provider = "Microsoft.Jet.OLEDB.4.0"        .ConnectionString = "<Drive>\<Path to Northwind sample database>"        .Open    End With    With rst        'Select the index used in the recordset.        .Index = "PrimaryKey"        'Set the location of the cursor service.        .CursorLocation = adUseServer        'Open the recordset.        .Open "Order Details", conn, adOpenKeyset, _          adLockOptimistic, adCmdTableDirect        'Find the customer order where OrderID = 10255 and ProductID = 16.        .Seek Array(10255, 16), adSeekFirstEQ        'If a match is found, print the quantity of the customer order.        If Not rst.EOF Then            Debug.Print rst.Fields("Quantity").Value        End If    End WithEnd Function						
    Observe que no código, o caminho para Northwind.mdb pode variar de um computador para outro.
  5. No menu Debug , clique em Compile Db1 .
  6. Na janela Verificação imediata, digite a seguinte linha e, em seguida, pressione ENTER:
    SeekRecord
OfficeKBHowTo inf ACC2002
Referências
Para obter informações adicionais sobre como usar o método Seek com o Microsoft Jet tabelas, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
290060ACC2002: Erro definindo index propriedade do Recordset do ADO está baseado em um banco de dados Microsoft Jet

Propriedades

ID do Artigo: 287638 - Última Revisão: 12/06/2015 00:21:17 - Revisão: 7.4

Microsoft Office Access 2003, Microsoft Access 2002 Standard Edition

  • kbnosurvey kbarchive kbmt kbado kbdatabase kbprogramming kbdta kbhowto KB287638 KbMtpt
Comentários