QUANTIDADE MÁXIMA DE CAMPOS EM UM DBF (HARBOUR)

Fórum sobre ferramentas de apoio à programação (Clipper/[x]Harbour)

Moderador: Moderadores

Avatar do usuário
Kaique Afonso
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 31 Mar 2023 10:08
Localização: Santo Antônio de Jesus - BA

QUANTIDADE MÁXIMA DE CAMPOS EM UM DBF (HARBOUR)

Mensagem por Kaique Afonso »

Bom dia, qual a quantidade máxima segura de campos que podemos criar em um arquivo DBF usando o HARBOUR, sem que aconteça problemas pela quantidade de campos.
Estou com um arquivo de 300 campos, e gostaria de saber se esta quantidade de campos (300) poderia ocasionar problemas de índices, corrupções e no próprio arquivo dbf.

Ter 2 arquivos, cada um de 150 campos, seria uma boa solução? Ou podemos deixar um arquivo único com os 300 campos?
Avatar do usuário
carlaoonline
Usuário Nível 3
Usuário Nível 3
Mensagens: 190
Registrado em: 24 Ago 2014 22:38
Localização: Porto Alegre-RS

QUANTIDADE MÁXIMA DE CAMPOS EM UM DBF (HARBOUR)

Mensagem por carlaoonline »

Bom dia!

Vejo essa questão de forma bem simples:

Se tens um DBF com 300 campos e foi aceito, digo, se está funcionando, então não tem problemas, pois não há problemas em usar os recursos disponíveis e que são aceitos.

Vou dar um exemplo:

A claúsula FOR da indexação de um a arquivo DBF aceita até 250 caracteres (elo menos no NTX), acima disso dá erro, logo você pode usar tranquilamente ATÉ 250 caracteres MAS não será possível 251.

Da mesma forma a quantidade de campos.


Sobre a indexação (arquivo de índices CDX/NTX) acredito que seria a mesma coisa, sendo o que pode ocasionar é demorar um pouco mais para gerar o índice caso tenha condições sobre os campos (demorar alguns segundos ou milésimos de segundos a mais dependendo a quantidade de registros), MAS DEPOIS DE CRIADO os índices, aí não faz diferença nenhuma pois no índice vai o numero da linha (recno()) e não o número da coluna (field).

Acho que seria isso, porém dá tb pra fazer um teste com dois arquivos de 500.000 registros. Um com 10 campos e outro com 300 e ver na prática.
Avatar do usuário
Kaique Afonso
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 31 Mar 2023 10:08
Localização: Santo Antônio de Jesus - BA

QUANTIDADE MÁXIMA DE CAMPOS EM UM DBF (HARBOUR)

Mensagem por Kaique Afonso »

OK! Obrigado pela sua resposta!
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

QUANTIDADE MÁXIMA DE CAMPOS EM UM DBF (HARBOUR)

Mensagem por JoséQuintas »

limite.png
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

QUANTIDADE MÁXIMA DE CAMPOS EM UM DBF (HARBOUR)

Mensagem por alxsts »

Olá!

Independentemente do limite máximo da quantidade de campos de uma tabela qualquer, quando a quantidade de campos estiver alta, é um sinal de alerta indicando uma possível falha de normalização do modelo de dados. A recomendação, quando possível, é dividir em diversas tabelas e estabelecer os relacionamentos entre elas.
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

QUANTIDADE MÁXIMA DE CAMPOS EM UM DBF (HARBOUR)

Mensagem por sygecom »

Concordo com o Alexandre.
Se precisa de 300 campos no DBF tem algo errado na modelagem, isso não deveria ser registros em uma segunda tabela ?
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder