como apagar registros de arquivo externo no IB
Criei um arquivo assim no IB:
create table xxx external file c:\bd\arq.txt (campo1 integer)
quando dou incluo um append fonciona perfeitamente.
O problema é quando dou um delete ele nao permite apagar o registo do arquivo externo.
Eu preciso esvaziar este arquivo de vez em quando pq ele é usado como log de alteracoes.
Alguem sabe como eu faço pra esvaziar o arquivo externo txt
[color=green:bcd0a4eba2]Movido de Delphi para Interbase/Firebird[/color:bcd0a4eba2]
create table xxx external file c:\bd\arq.txt (campo1 integer)
quando dou incluo um append fonciona perfeitamente.
O problema é quando dou um delete ele nao permite apagar o registo do arquivo externo.
Eu preciso esvaziar este arquivo de vez em quando pq ele é usado como log de alteracoes.
Alguem sabe como eu faço pra esvaziar o arquivo externo txt
[color=green:bcd0a4eba2]Movido de Delphi para Interbase/Firebird[/color:bcd0a4eba2]
M@rcelo
Curtidas 0
Respostas
Edilcimar
14/12/2005
crie o arquivo novamente, ele será criado vazio
GOSTEI 0
M@rcelo
14/12/2005
No windows nao tem problema
do um drop na tabela . e dou um deletefile no arquivo deopis é so criar.
meu problema ´q que tem clientes que tem como servidor o linux ai o deletefile nao funciona e eu nao sei como apagar no linux.
se eu der um drop no arquivo e recrialo sem apagalo com um deltefile o arquivo é recriado com os dados antigos .
do um drop na tabela . e dou um deletefile no arquivo deopis é so criar.
meu problema ´q que tem clientes que tem como servidor o linux ai o deletefile nao funciona e eu nao sei como apagar no linux.
se eu der um drop no arquivo e recrialo sem apagalo com um deltefile o arquivo é recriado com os dados antigos .
GOSTEI 0
Edilcimar
14/12/2005
se der um drop e depois der outro create table ele não pode ser recriado com dados dentro, se está acontecendo isto é porque o drop não está funcionando
GOSTEI 0
M@rcelo
14/12/2005
incrivel
mas acabei de testar ecconteceu o que te falei.
criei a tabela inclui dados dei um drop depois recriei e os dados estavam todos la. qdo dei o drop o txt ficou la intacto.
o que sera isso?
mas acabei de testar ecconteceu o que te falei.
criei a tabela inclui dados dei um drop depois recriei e os dados estavam todos la. qdo dei o drop o txt ficou la intacto.
o que sera isso?
GOSTEI 0
Edilcimar
14/12/2005
o drop não está funcionando, tente apagar a tabela de outra maneira ou criar a tabela com outro processo tipo assignfile() com rewrite
GOSTEI 0
M@rcelo
14/12/2005
vou tentar mas sera que o assignfile funcina com servidor linux?
GOSTEI 0
Edilcimar
14/12/2005
suponho que sim, mas procure no help do delphi se ele também é clx ou se é apenas vcl
GOSTEI 0
M@rcelo
14/12/2005
ok obrigado
GOSTEI 0
Afarias
14/12/2005
vamos por partes...
|Alguem sabe como eu faço pra esvaziar o arquivo externo txt
isso não é possível. vc tem mesmo q deletar os registros ´fora´ do banco ou simplesmente apagar o arquivo
|funciona e eu nao sei como apagar no linux
no cosole?? rm <nome do arquivo>
|crie o arquivo novamente, ele será criado vazio
não
|se der um drop e depois der outro create table ele não pode ser recriado
|com dados dentro, se está acontecendo isto é porque o drop não está
|funcionando
Na verdade o DROP está funcionando perfeitamente, assim como o CREATE tambem. Tabelas externas funcionam assim mesmo.
T+
|Alguem sabe como eu faço pra esvaziar o arquivo externo txt
isso não é possível. vc tem mesmo q deletar os registros ´fora´ do banco ou simplesmente apagar o arquivo
|funciona e eu nao sei como apagar no linux
no cosole?? rm <nome do arquivo>
|crie o arquivo novamente, ele será criado vazio
não
|se der um drop e depois der outro create table ele não pode ser recriado
|com dados dentro, se está acontecendo isto é porque o drop não está
|funcionando
Na verdade o DROP está funcionando perfeitamente, assim como o CREATE tambem. Tabelas externas funcionam assim mesmo.
T+
GOSTEI 0