ROBO PARA ATUALIZAR DADOS
Buenas niños 
to precisando criar um robo, para atualizar meu banco de dados...
tenho uma tabela no banco cujo meus registros tem antes do texto um numero exemplo:
1Texto que se seque
2texto que se segue
3texto que se segue
o que eu preciso é de uma sql que faça uma varredura na tabela e retire esses numeros e deixe somente o texto do campo, e que esse numero seja gravado em um outro campo que criei agora...
se alguem puder me montar essa sql, ou saiba de um jeito mais eficiente eu agradeço...
obrigado

to precisando criar um robo, para atualizar meu banco de dados...
tenho uma tabela no banco cujo meus registros tem antes do texto um numero exemplo:
1Texto que se seque
2texto que se segue
3texto que se segue
o que eu preciso é de uma sql que faça uma varredura na tabela e retire esses numeros e deixe somente o texto do campo, e que esse numero seja gravado em um outro campo que criei agora...
se alguem puder me montar essa sql, ou saiba de um jeito mais eficiente eu agradeço...
obrigado
eu entendi mais o menos.
você fala tipo um rotina para percorrer toda tabela onde ter milhares de registros que inicia com numeros e depois letras.
ai você que separar numeros de letras e grava os numeros em outra tabela é isso ?
você fala tipo um rotina para percorrer toda tabela onde ter milhares de registros que inicia com numeros e depois letras.
ai você que separar numeros de letras e grava os numeros em outra tabela é isso ?
Poste a ESTRUTURA (campos e tipos de dados) da tabela.
isso, mas os numeros serão gravados na mesma tabela num outro campo, teria de ser um comando update neh...
preciso de uma sql de update dentro de um loop
to tentando aqui, tem alguma ideia?
preciso de uma sql de update dentro de um loop
to tentando aqui, tem alguma ideia?
Citação:TECLA :
Poste a ESTRUTURA (campos e tipos de dados) da tabela.
Codigo = long
nome = text
conteudo = text
local = text
capitulo = text
sendo que os textos com os numeros no inicio estão em [Ô]nome[Ô] e os numeros retirados de lá vão para [Ô]capitulo[Ô]
amigos, mais um detalhe... eu consegui aqui no site uma rotina que extrai os numeros de uma string, me serviria, porém ela estrai todos os numeros do texto e são milhares de registro e naum sei se em algum desses registros contém numeros entre seu conteúdo, sendo assim só posso remover os numeros antes de comessar o texto...
um detalhe que talvez seja importante é que os numeros são separados por um espaço, sendo assim acho que poreia usar uma rotina para pegar tudo que estiver antes do primeiro espaço...
alguem sabe com montar isso?
obrigado
um detalhe que talvez seja importante é que os numeros são separados por um espaço, sendo assim acho que poreia usar uma rotina para pegar tudo que estiver antes do primeiro espaço...
alguem sabe com montar isso?
obrigado
OK.
Outra coisa, não existe um PADRÃO de armazenamento na coluna NOME?
Exemplo:
1Texto que se seque - Há um ESPAÇO entre o NÚMERO e o NOME
2texto que se segue - Não há o ESPAÇO do registro anterior
Outra coisa, não existe um PADRÃO de armazenamento na coluna NOME?
Exemplo:
1Texto que se seque - Há um ESPAÇO entre o NÚMERO e o NOME
2texto que se segue - Não há o ESPAÇO do registro anterior
Citação:TECLA :
OK.
Outra coisa, não existe um PADRÃO de armazenamento na coluna NOME?
Exemplo:
1Texto que se seque - Há um ESPAÇO entre o NÚMERO e o NOME
2texto que se segue - Não há o ESPAÇO do registro anterior
tecla tem espaço sim
exemplo:
registro 1: 124 Texto que se segue
registro 2: 47 Texto que se segue
e assim por diante
Tente o seguinte:
Qualquer dúvida é só postar!
Dim i As Integer, num As Integer, texto As String
i = InStr(1, Text1, [Ô] [Ô])
[txt-color=#007100][ô] Pegar somente o NÚMERO[/txt-color]
num = Trim(Left(Text1, i - 1))
[txt-color=#007100][ô] Pegar somente o TEXTO[/txt-color]
texto = Trim(Right(Text1, Len(Text1) - i))
[txt-color=#007100][ô] Aqui você faz o UPDATE[/txt-color]
Qualquer dúvida é só postar!
ótimo meu amigo tecla
porém sóuma duvida, nesta tabela eu tenho 31.098 registros. No caso ele esse codigo vai capturar somente os numeros do inicio do texto?
caso em algum registro eu tenha numeros entre os textos ele vai capturar tbm?
uma coisa que observei foi que os numeros são no máximo 3 casas, o valor máximo [Ô]000[Ô]
vou tentar aqui e te retorno
porém sóuma duvida, nesta tabela eu tenho 31.098 registros. No caso ele esse codigo vai capturar somente os numeros do inicio do texto?
caso em algum registro eu tenha numeros entre os textos ele vai capturar tbm?
uma coisa que observei foi que os numeros são no máximo 3 casas, o valor máximo [Ô]000[Ô]
vou tentar aqui e te retorno
Uma idéia da rotina completa, seria a seguinte:
Dim i As Integer, num As Integer, texto As String
Do While Not rs.EOF
[txt-color=#007100] [ô] Identificar o espaço entre o NÚMERO e o TEXTO[/txt-color]
i = InStr(1, rs.Fields([Ô]nome[Ô]), [Ô] [Ô])
[txt-color=#007100] [ô] Pegar somente o NÚMERO[/txt-color]
num = Trim(Left(Text1, i - 1))
[txt-color=#007100] [ô] Pegar somente o TEXTO[/txt-color]
texto = Trim(Right(Text1, Len(Text1) - i))
[txt-color=#007100] [ô] Aqui você faz o UPDATE[/txt-color]
sSQL = [Ô]UPDATE tabela SET nome=[ô][Ô] & texto & [Ô][ô], capitulo=[Ô] & num & [Ô] WHERE nome=[ô][Ô] & rs.Fields([Ô]nome[Ô]) & [Ô][ô][Ô]
con.Execute sSQL
rs.MoveNext
Loop
MsgBox [Ô]Atualização concluÃda![Ô], , [Ô]Tecla - VBMania[Ô]
Tópico encerrado , respostas não são mais permitidas