Ir para conteúdo
Fórum Script Brasil
  • 0

Problemas com Do Until e While...


Vinixop_s

Pergunta

Olá pessoal! Tudo bom?! Espero que sim...

Abraços a todos!

Meu problema é o seguinte: O código abaixo lê um arquivo de texto e em seguida salva as informações em um banco de dados.

O problema é que na hora dele buscar no arquivo txt todos os dados ele pega apegas a primeira linha, o While só funciona quando o faço só, quando uso junto com o Do Until ele só pega o primeiro registro.

Segue o código:

<%

Server.ScriptTimeout = 1200

'///////////////////////////////////////////////////////////////

' Conectando com a base de dados

'///////////////////////////////////////////////////////////////

set conexao = Server.CreateObject("ADODB.Connection")

conexao.Open "Provider=Microsoft.jet.OLEDB.4.0;Data Source=C:\Inetpub\wwwroot\texto\db\master.mdb"

'conexao.Open "Provider=Microsoft.jet.OLEDB.4.0;Data Source=C:\Domains\sigcrbh.com.br\wwwroot\sigcrbh\db\master.mdb"

conexao.CursorLocation = 3

'O parâmetro forReading é utilizado somente para leitura.

ForReading = 1

'Informe aqui o caminho do arquivo TXT

str_caminho = "C:\Inetpub\wwwroot\texto\lista.txt"

'Cria o objeto

Set objeto = CreateObject("Scripting.FileSystemObject")

'////////////////////////////////////////////////////////////////

' Funções que estavam no arquivo de include

'////////////////////////////////////////////////////////////////

'Condição para verificar se o arquivo exite no local informado

If (objeto.FileExists(str_caminho)) Then

'Abertura do objeto e loop para ler o arquivo TXT

Set str_fso = objeto.OpenTextFile(str_caminho,ForReading,False)

While (not str_fso.AtEndOfStream)

campo = str_fso.readline

do Until id=10000

id = id + 1

SQL = "UPDATE email SET email='"&campo&"' WHERE id = "&id&""

Set Rs = Conexao.Execute(SQL)

response.write "Email número: " &id & " de: " &campo & " Foi atualizado. <br>"

Loop

wend

response.end()

Set str_fso = nothing

set objeto = nothing

else

response.write "Arquivo não encontrado !!!"

End If

%>

Até breve e uma ótima semana a todos.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Guest --vinixops --

Olá pessoal! Boa tarde!

Consegui resolver! Problema era simples e eu não estava conseguindo nem antenar para isso de tanto tempo que já estava em cima deste sisteminha!

Resolvi da seguinte forma:

Apenas tirei o Do Until e coloquei a função dentro do próprio While!

Postei o correto pois minha dúvida poderia ser a de outros também.

Valeu ae e abraço a todos.

'Condição para verificar se o arquivo exite no local informado

If (objeto.FileExists(str_caminho)) Then

'Abertura do objeto e loop para ler o arquivo TXT

Set str_fso = objeto.OpenTextFile(str_caminho,ForReading,False)

While (not str_fso.AtEndOfStream) id = id + 1

campo = str_fso.readline

SQL = "UPDATE email SET email='"&campo&"' WHERE id = "&id&""

Set Rs = Conexao.Execute(SQL)

response.write "Email número: " &id & " de: " &campo & " , foi atualizado com sucesso!. <br>"

wend

Set str_fso = nothing

set objeto = nothing

else

response.write "Arquivo não encontrado !!!"

End If

%>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...