TRIGGER após criar tabela
22/04/2005
0
Alguém poderia me dizer ou se já tiver q possa me passar .
Tenho um tabela onde quero cruiar uma TRIGGER, para q essa
TRIGGER. Toda vez q for criada uma tabela nova no Database,
automaticamente o nome a mesma tabela seja inclusa dentro
da q possui a TRIGGER.
Obrigado.
Eduardo.padilha
Posts
22/04/2005
Mysys
isso seria quase que uma trigger no database
25/04/2005
Eduardo.padilha
mas como fazer ? Vc tem algo parecido ?
25/04/2005
Eduardo.padilha
Ola caros Colegas....
Alguém poderia me dizer ou se já tiver q possa me passar .
Tenho um tabela onde quero cruiar uma TRIGGER, para q essa
TRIGGER. Toda vez q for criada uma tabela nova no Database,
automaticamente o nome a mesma tabela seja inclusa dentro
da q possui a TRIGGER.
Obrigado.
26/04/2005
Marcus.magalhaes
Sua pergunta está um pouco confusa (ou eu já estou com sono...hehehe). Mas vamos lá, vc tem uma tabela que armazena os nomes das tabelas que vc tem no seu banco, e vc gostaria de ter esta tabela sempre atualizada. É isso?
Se for isso vc está reinventando a roda, pq a tabela sysobjects contém todos os objetos que estão na base, portanto se vc quer saber quais são as tabelas que foram criadas na base por vc, ou por quem quer q seja, vc pode fazer o seguinte comando :
[color=green:350df39aa1]Select name, crdate
From dbname..sysobjects
Where type = ´U´[/color:350df39aa1] -- U= user table, se vc quiser ver as tbls de sistema acrescente ou troque para ´S´ -- S = system
Espero ter ajudado. Caso não seja tente ser mais claro na sua explicação.
Att,
27/04/2005
Eduardo.padilha
Marcus eh extamente o q vc entendeu, eu se q já existe a roda ahahahah
Select name, crdate From dbname..sysobjects Where type = ´U´ .......
Porem deixar eu explicar para qual a finalidade.....
Eh o seguinte minha tabela x onde guarda o nome de todas as outras do banco tem uma coluna q se chama tabela_em_uso onde eh 1 ou 0 , quando eh = 1, eh pq essa tabela nao esta em uso else 0.
Entao como o banco esta sendo reestruturado, estavamos fazendo uma varedura das tabelas q possivelmente nao estao em uso, para isso checamos a tabela x.tabela_em_uso.
Mas imagina q nesse periodo alguem crie uma nova tabela, entao gostaria de armazenar o nome e jogar 0 no campo tabela_em_uso.
Ou seja a finalidade dessa tabela x seria somente para definir as tabelas em uso ou nao.
E pq estamos fazendo isso ? Pq tem mais de 100 tabelas q nao estao mais sendo usadas, entao essa tabela x seria uma referencia.
Por isso pergunto ah um meio armazenar o nome de cada tabela nova na tabela x ?
27/04/2005
Marcus.magalhaes
vc pode fazer o seguinte, crie um job que faça o seguinte insert na sua tabela
Insert Into suatabela
Select name, xxxxxxx
From sysobjects
Where name not in (Select distinct name from sua tabela)
and type = ´U´
Assim vc pega somente tabelas e somente as que ainda não estão na sua tabela.
Vc pode agendar o job para rodar diariamente.
Espero ter ajudado.
Att,
Clique aqui para fazer login e interagir na Comunidade :)