USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  ADO - consulta
Mr
CONTAGEM
MG - BRASIL
ENUNCIADA !
Postada em 11/05/2005 16:25 hs         
Estou tentando sair do dao, mas tah osso...
tive lendo e tentando usar aquele método que está na seção de artigos...
a parte de inclusão funciona, mas a consulta tah osso....
   rs.Find "codigo = " & id, , , 1  '1 - indica a procura a partir do primeiro registro
 o q issu significa?
como eu faço -> select * tabela where nome = '" & campo.text & "'"
usando o método acima?
Sei q é dúvida primária, mas realmente tah osso....
Desde já agradeço...
 
 
   
Susana
ANGRA DOS REIS
RJ - BRASIL
ENUNCIADA !
Postada em 11/05/2005 19:27 hs            
Se voce quiser acessar um registro usando o SQL acima poderá fazer assim:
Dim RSX As New ADODB.Recordset      (declare um recordset)
Set RSX = ConexaoBanco.Execute("select * tabela where nome = '" & campo.text & "'"")  (carregue o recordset com o registro)
variavel = RSX!Nomecampo  (recupere os campos selecionados)
   
Gabriel.Logan
BSB
DF - BRASIL
ENUNCIADA !
Postada em 12/05/2005 00:02 hs            
Cara, ai vai uma lista sobre Find do site: (http://www.vbmania.com.br/vbmdetail.php?varID=2089)
 
Procurando no Banco de Dados (Find - FindMin - FindNext) - DAO & ADO
(DAO)
No DAO, exite o comando FindMin que faz a procura a partir do início da tabela, achando a primeira ocorrencia daquilo a que está sendo procurado.
'Abre o Recordset e então:
Dim sArg as String
sArg = InputBox ("Por favor, digite o Nome do " &_
                 "Cliente:", "Localizar Nome")
'P/ procurar EXATAMENTE o que foi digitado:
RS.FindMin "NomeCliente = '" & sArg & "'"
'P/ procurar algum nome que COMECE com o que
'foi digitado:
RS.FindMin "NomeCliente like '" & sArg & "*'"
'P/ procurar algum nome que TERMINE com o que
'foi digitado:
RS.FindMin "NomeCliente like '*" & sArg & "'"
'P/ procurar algum nome que tenha o que foi
'digitado em qualquer parte (inicio/meio/fim):
RS.FindMin "NomeCliente like '*" & sArg & "*'"
If RS.NoMatch then
  'Nenhum registro foi encontrado.
Else
  'Foi encontrado um registro.
Endif
Bom, se algum registro tiver sido encontrado, você poderá pesquizar a próxima ocorrencia (próximo registro que contenha aquele valor procurado no campo que se está sendo feita a pesquiza), usando o comando FindNext:
RS.FindNext "NomeCliente = '" & sArg & "'"
'Ou:
RS.FindNext "NomeCliente like '" & sArg & "*'"
'Ou:
RS.FindNext "NomeCliente like '*" & sArg & "'"
'Ou:
RS.FindNext "NomeCliente like '*" & sArg & "*'"
If RS.NoMatch then
  'Nenhum registro foi encontrado.
Else
  'Foi encontrado um registro.
Endif
Bem, a única coisa que você precisa saber para usar os comandos FindMin, FindMax, FindNext e FindPrevious, é que o FindMin faz a procura SEMPRE a partir do início da tabela, que o FindMax faz a procura SEMPRE a partir do fim da tabela e os outros dois (FindNext e FindPrevious) fazem a procura SEMPRE a partir do ponto da tabela em que estão.
(ADO)
No ADO não existe os comandos FindMin, FindMax, FindNext e FindPrevious, mas existe o comando Find. Usando este comando (Find) você não poderá usar o RS.NoMatch, pois ele não trabalha desta forma. Mas como eu posso fazer procuras do tipo "achar a primeira ocorrencia", "achar a próxima ocorrencia" e etc na minha tabela, sendo que eu só tenho o comando Find??? Bem, veja a sintaxe que você irá entender:
RS.Find "[Campo] = [Valor]", [SkipRows], [Tipo]
Partes da sintaxe:
[Campo] => Campo do banco de dados. O nome deve ser IDENTICO ao que está no banco de dados.
[Valor] => Aquilo que se está procurando.
[SkipRows] => Valor entre 0 e 1. Depende do tipo de procura que está sendo feita.
[Tipo] => Constante que indica como a procura deverá ser feita.
Veja esta tabela para saber o que colocar em [SkipRows] e em
[Tipo] conforme a sua procura:
Método DAO  ADO-SkipRows  ADO - Search direction
FindMin  0   adScarchForward (se não
    estiver posicionado no
    primeiro registro,
    execute o MoveMin
    antes do Find)
FindMax  0   adScarchBackward
    (se não estiver
    posicionado no último
    registro, execute o
    MoveMax antes do Find)
FindNext  1   adScarchForward 
FindPrevious  1   adScarchBackward 
Veja um exemplo de FindMin no ADO usando o comando Find:
'Abre o Recordset e então:
Dim sArg as String
RS.MoveMin '<<<- MUITO importante!!!
sArg = InputBox ("Por favor, digite o Nome do " &_
                 "Cliente:", "Localizar Nome")
'P/ procurar EXATAMENTE o que foi digitado:
RS.Find "NomeCliente = '" & sArg & "'", adSearchForward
'P/ procurar algum nome que COMECE com o que
'foi digitado:
RS.Find "NomeCliente like '" & sArg & "*'", adSearchForward
'P/ procurar algum nome que TERMINE com o que
'foi digitado:
RS.Find "NomeCliente like '*" & sArg & "'", adSearchForward
'P/ procurar algum nome que tenha o que foi
'digitado em qualquer parte (inicio/meio/fim):
RS.Find "NomeCliente like '*" & sArg & "*'", adSearchForward
If RS.EOF Then
  'Nenhum registro foi encontrado.
Else
  'Foi encontrado um registro.
Endif
Bem, seguindo essa filosofia, veja:
'FindMax:
RS.Find "NomeCliente like '" & sArg & "'", adScarchBackward
'FindNext:
RS.Find "NomeCliente like '" & sArg & "'", 1, adSearchForward
'FindPrevious:
RS.Find "NomeCliente like '" & sArg & "'", 1, adScarchBackward
 

By Gabriel_Logan
 
   
7Cordas
PORTO ALEGRE
RS - BRASIL
Postada em 12/05/2005 12:29 hs            
Cara, eu sei que é dureza começar a usar ADO, pois todo mundo passa por isso....
Se quiseres me adiciona no MSN e te passo uma dicas, OK?!

Cristiano Fischer
Projeto SIGA - Sistemas Integrados de Gestão
     
Fernanda
não registrado
ENUNCIADA !
Postada em 11/11/2007 12:31 hs   
o q significa  NoMatch ?
   
ghost_jlp
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 12/11/2007 22:15 hs            
NoMatch (propriedade do DAO) significa que não encontrou qdo retornar TRUE e significa que encontrou caso retorne FALSE. É usado depois do SEEK ou do FIND...
 
at+ :)
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página