Fórum Empty Table ! Esvaziar tabela #262857
21/12/2004
0
Tenho uma tabela chamada Temp.db que esta sendo chamada pelo data module, pelo componente table nominado como tbtemp . Tenho um form para cadastrar dados nesta tabela, só que neste mesmo form eu tenho um botão que serve para apagar TODOS os registros desta mesma tabela . Neste botão eu coloquei o seguinte código :
datamodule.tbtemp.emptytable;
Bom, rodei a aplicação , cadastrei ums 4 clientes , só que quando cliquei neste botão pra dar um Empty Table, ele retornou o seguinte erro :
Table is in busy , algo do tipo.
Já tentei de tudo , e teve uma vez , que eu não sei o que eu fiz , que retornou um outro erro , também não me lembro a mensagem na integra , mas se eu não me enganar parece que era algo com : seilá o que .... table is exclusive , lembro que era alguma coisa com exclusive .
Caros amigos , resumindo , eu estou trabalhando com Paradox 7. e se alguém souber qual o procedimento correto para limpar toda a tabela via programação , eu agradeço muito pela ajuda !
Valeuuu galera !
Boas Festas !
/\ FELIZ NATAL !!! ******************
/ \
/ * \
/ * * \
/ * \
***********
||
||
----------------
Tiagojmilam
Curtir tópico
+ 0Post mais votado
24/12/2004
var
//Variavel que receberá aquantidade de registros...
todosResgistro:Integer;
//Variável que receberá zero...
nenhumRegistro:Integer;
begin
//verifica se existe algum registro...
if Dados.Tb_Vendas.RecordCount >= 1 then
begin
nenhumRegistro:= 0;
//recebendo a quantidade de registros...
todosResgistro:= Dados.Tb_Vendas.RecordCount;
if application.MessageBox(´Deseja apagar todos os registros ?´, ´Confirmação´,mb_yesNo + mb_IconQuestion )= idYes then
begin
//executando...
repeat
//deleta um registro
Dados.Tb_Vendas.Delete;
//conta que existe menos um registro...
todosResgistro:= todosResgistro -1;
//verifica se a variávem todos os registros está com zero , caso contrario
///voltará par Repeat e apagará mais um registro até que fique com zero...
until todosResgistro = nenhumRegistro;
end;
end;
end;
Bem Explicado...
Ass: Max...
Max.jgs
Gostei + 1
Mais Posts
21/12/2004
Max.jgs
Faça um loop para apagar todos os registros...
Gostei + 0
21/12/2004
Sremulador
Provavelmente a tabela esta em uso.
Gostei + 0
21/12/2004
Tiagojmilam
Como se faz um loop ? Sou inicante e não entendo algumas palavras ... se alguém puder me dizer passo-a-passo como resolver meu dilema agradeceria muito mesmo !
Valeu Galera !
Gostei + 0
21/12/2004
Rômulo Barros
[color=green:a0035954b0][b:a0035954b0]1 - [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=45819&highlight=busy]´Table is in Busy´. Quem está usando?[/url]
2 - [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=45161&highlight=busy]Eliminar fisicamentes registros de tabelas .DBF[/url]
3 - [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=41357&highlight=busy]Mensagem ao abrir Tabela .DBF ...[/url]
4 - [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=36908&highlight=busy]Compactando Tabelas Paradox[/url] (Isso resolverá o seu problema)
5 -[url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=9002&highlight=busy] Paradox em rede[/url]
6 - [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=4979&highlight=busy]Erro: ´Table is in busy´[/url][/b:a0035954b0][/color:a0035954b0]
Gostei + 0
21/12/2004
Emersonclubedelphi
datamodule.tbtemp.close;
datamodule.tbtemp.emptytable;
Gostei + 0
24/12/2004
Max.jgs
var
TotalClientes:integer;
NenhumCliente:integer;
begin
if Dados.Tb_CadCli.RecordCount >= 1 then
begin
NenhumCliente:= 0;
if application.MessageBox(´Tem Certeza ? Isto Apagará todos os registros Clientes ?´, ´Confirmação´,
mb_yesNo + mb_IconQuestion )= idYes then
if Dados.Tb_CadCli.RecordCount >= 1 then
begin
TotalClientes:= Dados.Tb_CadCli.RecordCount;
repeat
Dados.Tb_CadCli.delete;
TotalClientes:= TotalClientes - 1;
until TotalClientes = NenhumCliente;
end;
end;
end;
Gostei + 1
24/12/2004
Martins
// Verifica se a tabela está ativa (aberta) If table1.Active = true then // Se estiver então feche-a begin Table1.Close; //Fechando a tabela aqui... end; Table1.EmptyTable; //Com a tabela fechada, é só limpar Label1.Caption:= ´A sua tabela está limpa agora...´;
Espero q lhe ajude!!
[b:29f3935144]Martins[/b:29f3935144]
Gostei + 0
24/12/2004
Dbergkamps
Table01.close;
ou pela instrução sql
delete from Table01
Query1.ExecSql;
espero ter ajudado e feliz natal a todos os membros do fórum clube delphi, que no próximo ano possamos superar os desafios que surgirem em nossos softwares. :D :D :D :D :D :D
Gostei + 0
24/12/2004
Max.jgs
Ass: Max...
Gostei + 0
26/12/2004
Zotti
Procedure ApagarTodosReg(Origem:TDataSet);
Begin
With Origem do // o nome origem deve ficar como está origem
While Nome da Tabela do // Coloque o nome da table
Delete;
end;
Depois chame em algum evento_ex Click
procedure TBL.Button1Click(Sender: TObject);
begin
ApagarTodosReg(Nome da Tabela);
end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)