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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  AJUDA EM ADO
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
ENUNCIADA !
Postada em 18/08/2012 12:38 hs            
Amigos, iniciando em ADO, eu abro uma tabela assim
rs.Open "SELECT * FROM tabela WHERE campo='" & CRITERIO & "'", conexao, adOpenDynamic, adLockOptimistic
Funciona perfeitamente, agora se eu precisar efetuar uma nova consulta, como devo fazer sem fechar o rs aberto?????

Outra coisa o
rs.Find "campo=" & criterio, , 1
funciona em algumas tabelas outras não, gera um erro de fora de intervalo da faixa.

vlu//
   
Tiranossauro
não registrado
ENUNCIADA !
Postada em 20/08/2012 07:48 hs   
Defina um segundo, terceiro, quarto recordset ...
rs As New ADODB.Recordset
rsb as new adodb.recordset


Quanto a Find, sugiro que utilize like para filtrar registros.
http://www.macoratti.net/d110102.htm
   
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
ENUNCIADA !
Postada em 20/08/2012 10:37 hs            
Obrigado, amigo.

vlu//
   
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
ENUNCIADA !
Postada em 21/08/2012 12:43 hs            
Complicou, tenho um BD em Access com o cadastro de cidades, são 5583 registros, por enquanto, esta tabela mantenho atualizada e coloco no cliente, evitando que mesmo faça algo errado. Diariamente ao entrar no sistema pela primeira vez, o sistema verifica a Tabela do IBGE e as cidades não cadastradas ele coloca no meu BD Postgre, bom esatva usando o Find, mas as vezes não funciona, então como eu faria pra transferir a tabela, meu código abaixo.
Screen.MousePointer = 11
        smyFORM.lblMENSAGEM.Caption = "Transferinfo Tabela de Cidades. Aguarde..."
        DoEvents
        Call conectaACCESS(spmDB) ' aqui ele conecta o banco acces
        rspIBGE.Open "SELECT * FROM IBGE ORDER BY NUMER", cnn, adOpenDynamic, adLockReadOnly
        smyFORM.pbrATUALIZA.Visible = True
        smyFORM.pbrATUALIZA.BackColor = vbWhite
        If rspIBGE.RecordCount > 0 Then
            smyFORM.pbrATUALIZA.MinValue = 0
            smyFORM.pbrATUALIZA.Value = 0
            smyFORM.pbrATUALIZA.MaxValue = (rspIBGE.RecordCount + 1)
            lN = 0
            rsIBGE.Open "SELECT * FROM ibge ORDER BY codibge", cn, adOpenDynamic, adLockOptimistic
            If Not rspIBGE.EOF Then
                rspIBGE.MoveMin
                Do While Not rspIBGE.EOF
                    rsIBGE.Find "codibge=" & rspIBGE!codibge, , 1
                    If rsIBGE.EOF Then
                        rsIBGE.AddNew
                        rsIBGE!codibge = rspIBGE!codibge
                        rsIBGE!cidade = rspIBGE!cidade
                        rsIBGE!estado = rspIBGE!estado
                        rsIBGE!uf = rspIBGE!uf
                        rsIBGE.Update
                    End If
                    lN = (lN + 1)
                    smyFORM.pbrATUALIZA.Value = lN
                    DoEvents
                    rspIBGE.MoveNext
                Loop
            End If
            rsIBGE.Close
            Set rsIBGE = Nothing
        End If
        rspIBGE.Close
        Set rspIBGE = Nothing
Bom, tudo parece funcionar bem, mas as vezes o Find não funciona, e ele duplica registros.
Agora dar um Select no EOF, teria que abrir e fechar o rsIBGE 5583 vezes, ai haja tempo de espera.
Como posso realizar uma nova consulta com BD aberto?

Saudades do Seek, não funciona no Postgre com ADO.

vlu//

   
Treze
não registrado
ENUNCIADA !
Postada em 21/08/2012 13:28 hs   
Vamos lá LCRamos vamos ver se posso te ajudar, veja o que entendi:

entendi que vc atualiza a base de dados no seu pc e depois os pc´s clientes atualizam suas bases pelo seu banco conferindo campo por campo é isso?

minha ajuda vai depender da sua resposta
   
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
ENUNCIADA !
Postada em 21/08/2012 15:08 hs            
Sim, Treze, exatamente, tenho uma base de dados em Access, com as Tabelas das cidades com os códigos do IBGE, e uma tabela de CFOP, usada nas NFe, bem uma vez por dia o sistema verifica novos dados nesta tabela e transfere para as tabelas dos clientes.
Agora o detalhe, os clientes que estão ainda com Acces, está tudo bem, mas agora migrando para o Postgre, estou trabalhando com o ADO, este é o problema, preciso saber como efetuar uma consulta sem fechar o BD, e abrir de novo.
Não sei se entendeu.

vlu//
   
Página(s): 1/3      PRÓXIMA »


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