Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
19 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 19 Visitantes :: 2 Motores de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
TRY BEGIN E FLOCK()

17/4/2017, 10:32 por AJC

Pessoal estou tendo alguns problemas de gravação em rede, estou usando
try begin, mas vi algo na …

Comentários: 0

Exportar Dados Campo Memo Tabela DBF

10/4/2017, 10:28 por fcampos

Olá bom dia.

Estou tentando exportar os dados de algumas tabelas em formato dbf pelo foxpro.
O …

Comentários: 2

Função EVL()

8/4/2017, 12:18 por Clebervfp

Bom dia a todos.
Vim compartilhar de uma Função do próprio VFP que me benefício muito.
Função …

Comentários: 0

COMO BLOQUEAR REGISTRO OU TABELA NO VISUAL FOXPRO PARA GRAVAÇÃO EM REDE

3/4/2017, 10:29 por AJC

Pessoal estou tendo um problema que acontece sempre busco na minha tabela de clientes o ultimo …

Comentários: 2

Controlar Scanner Twain

31/3/2017, 17:31 por Kleber R Bento

Estou usando o EZTW32.DLL para criar uma ferramenta que escaneia e gera PDF. Porém com esses …

Comentários: 0

Estatísticas
Temos 7079 usuários registrados
O último usuário registrado atende pelo nome de albsilva

Os nossos membros postaram um total de 48 mensagens em 25 assuntos

Select em uma tabela grande

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Em curso Select em uma tabela grande

Mensagem por camis em 9/5/2011, 15:14

Olá boa tarde tenho uma tabela de clientes com mais de 700.000 registros, ela corrompeu, fiz o backup e agora recriei a tabela, mas quando eu vou dar append dessa tabela q fiz backup q tem mais de 700.000 registros para a tabela nova, esse appaend vem faltando registros, pois a tabela é mto grande. Então queria saber como fazer selects para trazer toda essa tabela para a tabela nova...Por exemplo trazendo de 1.000 em 1.000! entenderam?

Obrigada!!

camis
Começando a Participar
Começando a Participar


Voltar ao Topo Ir em baixo

Em curso Re: Select em uma tabela grande

Mensagem por _batmanvfp_ em 9/5/2011, 15:51

uma Rotina

Código:
clear
close data all
set statu off
use clientes exclu
zap
tini=time()

for i=1 to 5000
    append blank
    repl codiclie with padl(recno(),5,"0")
    repl nomeclie with "CLIENTE - "+alltrim(str(i))
    repl cidaclie with "SAO PAULO"
    repl estaclie with "SP"

    @ 10,10 say "Registro: "+Alltrim(str(i))
endfor

tfim=time()
tfinal=tfim-tini

@ 15,1 say "Hora Inicial: "+tini
@ 17,1 say "Hora Final..: "+tfim
goto top
brow
   

com Append From seria algo assim , capaz que funcione


Código:
APPEND FROM TABELA FOR  CAMPOCODIGO = 0 .and. RECNO() < 1000

_batmanvfp_
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Re: Select em uma tabela grande

Mensagem por Julio em 9/5/2011, 17:04

Este codigo em certos casos corrige tabela danificada:
Código:
WAIT WINDOW "Verificando se algum arquivo esta corrompido. Aguarde..." nowait

nReparos = 0
nTotReg = Adir(aDbfs,"*.dbf")
For nFor = 1 To nTotReg
cArq = aDbfs(nFor,1)
WAIT WINDOW "Verificando se se arquivo "+cArq+" esta corrompido. Aguarde..." nowait

If Upper(cArq) <> "FOXUSER.DBF"
nError = 0
lError = .F.

Use (cArq) In 1 Exclusive

If lError
=Aerror(aArrErr)
nError = aArrErr(1,1)
Endif

If nError = 2091 Or nError = 2065
If Messagebox("O Sistema encontrou um arquivo corrompido"+Chr(13)+;
"Deseja tentar recuperar este arquivo agora ?",4+32+256,"CUIDADO") = 6

** A linha abaixo usar somente no fox 9
* Set TABLEVALIDATE To 0
nError = 0
lError = .F.
Use In 1
Use (cArq) In 1 Exclusive
If lError
=Aerror(aArrErr)
nError = aArrErr(1,1)
Endif

If nError = 0
lcColumnName = Substr(Sys(2015),1,10)
Alter Table &cArq Add Column (lcColumnName) c(1)
Alter Table &cArq Drop Column (lcColumnName)
USE
nReparos = nReparos + 1
Else
Messagebox("O arquivo "+cArq+" ainda esta corrompido",48,"ATENÇÃO")
Endif
nError = 0
lError = .F.

** A linha abaixo usar somente no fox 9
*Set TABLEVALIDATE TO 3

Use (cArq) In 1 Exclusive

If lError
=Aerror(aArrErr)
nError = aArrErr(1,1)
Endif
Endif
Endif

If nError <> 0
Messagebox("Nao foi possivel reparar o arquivo " + cArq, 48,"ATENÇÃO")
Sele (cArq)
Use
nError = 0
Else
Sele (cArq)
Use
Endif
Endif
NEXT

IF nReparos <> 0
Messagebox("Foram reparados "+TRANSFORM(nReparos)+" arquivos")
Endif

Usando o append from:
copiar mil registros do 1 ao 1000
Código:

use nome_tabela_vai_receber_dados exclusive
APPEND FROM nome_tabela FOR RECNO() >=1 .and. RECNO() <= 1000

Depois afaria assim
Copiar do registro 1001 ao 2000
Código:
use nome_tabela_vai_receber_dados exclusive
APPEND FROM nome_tabela FOR RECNO() >1001 .and. RECNO() <= 2000

e assim por diante

Julio
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Re: Select em uma tabela grande

Mensagem por FERNANDOMATRELLA em 11/5/2011, 22:56

tem um programa que se chama cmrepair ele arruma as tabelas corrompidas é muito bom porem nao me lembro se é pago mais vale a pena investir

FERNANDOMATRELLA
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Re: Select em uma tabela grande

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum