novos campos a um banco de dados sem alterar a informação

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

victorale07
Usuário Nível 2
Usuário Nível 2
Mensagens: 67
Registrado em: 20 Ago 2009 19:55
Localização: chile

novos campos a um banco de dados sem alterar a informação

Mensagem por victorale07 »

hola:
Eu preciso criar novos campos a um banco de dados, este banco de dados tem a informação (15.000 aporximadamente registros). Como eu faço para que eu não iria alterar esta informação .-

Eu só preciso adicionar 4 campos no banco de dados da seguinte forma:

CODIGO C 10
DESCRIP C 50
IMPUEST N 10, 2
PRECIO N 10, 2
PRECIO1 N 10, 2 <-> Crear
PRECIO2 N 10, 2 <-> Crear
UCOSTO N 10, 2
FULCOS D 8, 0
COSAN1 N 10, 2
FCOSA1 D 8, 0
COSAN2 N 10, 2 <-> Crear
FCOSA2 D 8, 0 <-> Crear
STOCK N 10, 3
STOMIN N 10, 3
.....


obrigado.
Editado pela última vez por victorale07 em 26 Mar 2010 13:25, em um total de 1 vez.
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Re: novos campos a um banco de dados sem alterar a informação

Mensagem por alxsts »

Olá!

Você pode fazer isto através do DBU ou criar um programa que faça a alteração de estrutura do DBF. Não se esqueça de fazer um backup do DBF antes.
Pelo DBU:
- abra a tabela
- digite F3 Create, Database
- adicione os novos campos
- digite F4 Save, Struct e confirme
[]´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:

Re: novos campos a um banco de dados sem alterar a informação

Mensagem por sygecom »

Veja o link abaixo:
viewtopic.php?f=4&t=9563&p=54243&hilit=addField#p54243
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
gvc
Colaborador
Colaborador
Mensagens: 1270
Registrado em: 23 Ago 2005 10:57

Re: novos campos a um banco de dados sem alterar a informação

Mensagem por gvc »

Use o código abaixo. Isso é via programa. Se vc for fazer isso apenas uma vez, a melhor solução é usar o DBU, Prometheus, DBX. Qualquer programa de edição de DBF, assim vc evita de ter que desenvolver um módulo que já esta pronto em uma ferramenta.

Código: Selecionar todos

a1 := ebb04->(dbstruct())
aadd(a1, {'box', 'L', 1, 0})
aadd(a1, {'cor', 'C', 15, 0})
dbcloseall()
frename('ebb04.dbf', 'ebb04.dbh')
dbcreate('ebb04', a1)
use ebb04 exclusive
append from ebb04.dbh
Agora, para verificar se determinado campo existe em um arquivo e atualizar a estrutura via sistema:

Código: Selecionar todos

a1 := ebb04->(dbstruct())
if ascan(a1, {|x| x[1] = 'BOX'}) = 0
   aadd(a1, {'box', 'L', 1, 0})
   dbcloseall()
   frename('ebb04.dbf', 'ebb04.dbh')
   dbcreate('ebb04', a1)
   use ebb04 exclusive
   append from ebb04.dbh
   alert('Arquivo Atualizado! Acesse o Sistema Novamente!')
   quit
end
Boa sorte. Espero ter ajudado.
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
Responder