Fórum Cannot drop the table #25165

05/09/2005

0

SQL

Galera, crio uma tabela temporaria em tempo de execusão e estou tendo o seguinte erro ao tentar ´dropa-la´:

Cannot drop the table ´TB´, because it doesn´t exist in the system catalogs

Vi alguma coisa na internet sobre o assunto, mas não entendi direito:

http://www.roguewave.com/support/docs/hppdocs/dbtug/5-5.html
http://www.object-craft.com.au/pipermail/python-sybase/2003-December/000202.html
http://lists.ibiblio.org/pipermail/freetds/2003q2/012643.html
http://www.roguewave.com/support/docs/sourcepro/dbcoreug/6-5.html

Alguém sabe o que pode ser e o que tenho que fazer?

Grato!

[color=green:4a9a1219bd]Movido de Delphi para Bancos de Dados[/color:4a9a1219bd]


Peununes

Peununes

Responder

Posts

05/09/2005

Rjun

Que banco você esta utilizando para criar essa tabela em tempo de [b:5967bf87b1]EXECUÇÃO[/b:5967bf87b1]?


Responder

Gostei + 0

05/09/2005

Peununes

Pô, Rogério! Podia ter deixado o português de lado, né? Valeu pela ´corresão´! :)

uso o Sybase!


Responder

Gostei + 0

05/09/2005

Rjun

Pelo que pude entender, a tabela temporária não está no catálogo do seu banco de dados. Imagino que ela deva guardar somente as tabelas fisicas. Qual comando você esta usando para apagar a tabela temporária?


Responder

Gostei + 0

05/09/2005

Peununes

Drop Table TBNomeTabela


Responder

Gostei + 0

05/09/2005

Martins

Pô, Rogério! Podia ter deixado o português de lado, né? Valeu pela ´corresão´! :) uso o Sybase!


A correção ficou bacana, agora vamos a tabela temporaria, sua base é SYBASE?

vc cria a tabela normalmente e para dropar, como vc tá fazendo?

parecido com isso:
DROP DATABASE @VendasPrazo

ou não tem nada a ver, hehehe!!!!


Responder

Gostei + 0

05/09/2005

Rjun

Eu não entendo de SYBASE, mas dei uma pesquisada, e a tabela temporária deve vir precedida do ´#´. Então para dar um drop, deve ser assim:

drop table TBNomeTabela



Responder

Gostei + 0

05/09/2005

Peununes

Rogério, está com o ´jogo da velha´ antes do nome da tabela sim, eu apenas não coloquei no exemplo.


Responder

Gostei + 0

05/09/2005

Peununes

Vixi! A gente não estava no fórum do Delphi!?!?!? Como a gente veio parar aqui?!!?!? :D


Responder

Gostei + 0

05/09/2005

Rjun

Você pode postar o código do momento em que você cria a tabela até o momento em que você ´dropa´.


Responder

Gostei + 0

05/09/2005

Peununes

Não entendi...


Responder

Gostei + 0

05/09/2005

Rjun

Como assim, não entendeu? Você deve estar criando essa tabela temporária em algum momento, via código. Então, poste o trecho de código onde você cria até o trecho de código onde você exclui a tabela.


Responder

Gostei + 0

05/09/2005

Peununes

Ô rogério, é que vc não colocou a interrogação no final da sua frase...
Estou fazendo manutenção em um sistema, ok? Então o código não foi feito por mim...
O desenvolvedor anterior fez o seguinte, num objeto TQuery ele escreveu na propriedade SQL:

create table #temp_evento(dat_evento datetime null,
cod_tipo_evento integer null,
txt_tipo_evento char(40) null,
cod_tipo_evento_pai integer null,
txt_tipo_evento_pai char(40) null)

Create Table temp_principal (dat_evento datetime null,
cod_tipo_evento integer null,
txt_tipo_evento char(40) null,
cod_plano_contabil integer null,
ind_receb_pagto char(1) null,
cod_tipo_evento_pai integer null,
txt_tipo_evento_pai char(40) null)

Depois em outra TQuery ele insere daddos e em outra na propriedade SQL ele ´dropa´:

drop table #temp_evento
Drop Table temp_principal

Depois no código ele executa:

try
QryDelTemp.ExecSQL;
except end;

QryCriaTemp.ExecSQL;

Basicamente é isso...


Responder

Gostei + 0

05/09/2005

Rjun

Esse erro ocorre quando você esta rodando com o Delphi aberto? Com Delphi fechado o erro persiste?


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar