COMO PROCURAR UM DADO SEM SABER EM QUAL TABELA, É POSSIVEL
Meus Caros.
Estou precisando localizar um dado em um BD SQL Server porem não sei em qual tabela ele se encontra e o BD é muito grande para para eu ter que construir um SELECT * FROM para cada tabela para localizar o dado que preciso.
Se trata de uma Placa de Veículo já procurei de todas as maneiras e não encontrei.
Se alguem puder me ajudar indicando uma linha de comando ou uma ferramenta que me possibilite localizar o campo e a tabela atraves do dado tipo ´BFO4673´ e eu saber em qual tabela ele se encontra fico muito grato.
Obrigado a Todos.
Estou precisando localizar um dado em um BD SQL Server porem não sei em qual tabela ele se encontra e o BD é muito grande para para eu ter que construir um SELECT * FROM para cada tabela para localizar o dado que preciso.
Se trata de uma Placa de Veículo já procurei de todas as maneiras e não encontrei.
Se alguem puder me ajudar indicando uma linha de comando ou uma ferramenta que me possibilite localizar o campo e a tabela atraves do dado tipo ´BFO4673´ e eu saber em qual tabela ele se encontra fico muito grato.
Obrigado a Todos.
N_informatica
Curtidas 0
Respostas
Ceilton
15/06/2009
Voce sabe o nome da coluna em que esta registrado a placa de carro?
Algo do tipo nm_placa...
Algo do tipo nm_placa...
GOSTEI 0
N_informatica
15/06/2009
Infelizmente a única referência que tenho é o numero da placa que é informada antes da impressão da nota fiscal.
Caso ajude estou procurando este dado em na base de dados do rm sistemas
Atenciosamentem,
Tadeu
Caso ajude estou procurando este dado em na base de dados do rm sistemas
Atenciosamentem,
Tadeu
GOSTEI 0
Ceilton
15/06/2009
Este codigo faz o que voce precisa.
Mas pode ser extremamente demorado, visto que pode executar table scan em tabelas muito grandes.
O select na tabela #achei listara as tabelas onde foi encontrado o valor procurado
Use com moderação.
------------------------------------------------------------------------------
select ´select * from ´ + o.name + ´ where ´ + c.name + ´ = ´´BFO4673´´´ C1
into temp
from syscolumns c, sysobjects o
where
c.id = o.id
and c.xtype in (175, 167) and c.name <> ´´
and o.type = ´U´
order by c.name
create table achei (nometabela varchar(500))
declare @comando varchar(250)
declare cursor01 cursor for select * from temp
open cursor01
fetch cursor01 into @comando
while @@fetch_status = 0
begin
execute (@comando)
if @@rowcount > 0
insert achei values (@comando)
fetch cursor01 into @comando
end
select * from #achei
close cursor01
deallocate cursor01
drop table temp
--drop table achei
----------------------------------------------------------------
Mas pode ser extremamente demorado, visto que pode executar table scan em tabelas muito grandes.
O select na tabela #achei listara as tabelas onde foi encontrado o valor procurado
Use com moderação.
------------------------------------------------------------------------------
select ´select * from ´ + o.name + ´ where ´ + c.name + ´ = ´´BFO4673´´´ C1
into temp
from syscolumns c, sysobjects o
where
c.id = o.id
and c.xtype in (175, 167) and c.name <> ´´
and o.type = ´U´
order by c.name
create table achei (nometabela varchar(500))
declare @comando varchar(250)
declare cursor01 cursor for select * from temp
open cursor01
fetch cursor01 into @comando
while @@fetch_status = 0
begin
execute (@comando)
if @@rowcount > 0
insert achei values (@comando)
fetch cursor01 into @comando
end
select * from #achei
close cursor01
deallocate cursor01
drop table temp
--drop table achei
----------------------------------------------------------------
GOSTEI 0