Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Erika_Inada

Pesquisar mesmo nome de campo em varias tabelas

Recommended Posts

Ola a todosPergunta de principiante....Bem, supondo que tenho varias tabelas que tem um campo chamado cdmatricula, com este mesmo nome em todas elas, como faco para listar todas estas tabelas que possuem este campo? Completando, como procurar em quais querys e procedures estas tabelas sao usadas? Ai... serah que me expressei bem?Obrigada Erika

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use este script aki.

Roda ele no Query analyzer na database que você ker procurar.

 

 

 

/********************************************************************************

 

* Descrição: Este script cria uma procedure lista todas as tabelas que possuem *

* uma determinada *

*coluna. *

* *

* Exemplo de como executar: EXEC Find_Columns 'NOMEDOCAMPO *

* *

* ///// Lista todas as tabelas que possuem a coluna au_lname *

* by Junior *

********************************************************************************

/

 

CREATE PROC Find_Columns(@column_name sysname)

AS

 

DECLARE @column sysname

 

SET @column = '%' + @column_name + '%'

 

SELECT a.name AS Column_Name, b.name AS Table_Name

FROM dbo.syscolumns a JOIN dbo.sysobjects b ON a.id = b.id

WHERE a.name LIKE @column

AND b.xtype = 'U'

ORDER BY table_name

 

 

GO

 

 

Qq estamos ai.

 

abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Junior,

 

Executei a sua query, parece que deu certo, porem,...... http://forum.imasters.com.br/public/style_emoticons/default/upset.gif ai, desculpe a ignorancia, onde visualiso o resultado?

Tipo, listou em algum arquivo externo?

Desculpe tah, to comecando agora a mexer com sql...

 

obrigada...

 

 

Erika

Compartilhar este post


Link para o post
Compartilhar em outros sites

Princesa,

 

O código é um stored procedure (procedimento armazenado) que não é nada mais que uma query que é armazenada e poderá ser utilizada posteriormente. Isto é um explicação simplista mas acho q lhe dará uma idéia.

 

Para rodar execute:

Find_Columns 'nome_da_coluna'
Repare que no nome da coluna a ser pesquisada deverá ser passado entre ' (plics).

 

 

jus2ka sempre sagaz!

Maneirissíma a sp depois colocar lá na área de dicas.

 

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola Erika,

 

como o jothaz disse,

 

você tem que executar no query analiser

exec Find_Columns 'nome_da_coluna'

 

sempre entre '' (aspas simples ou plics(que nome hehehee)

 

eh isso... e bme vinda ao mundo SQL. qq coisa estamos aki ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gente, Valeu, tudo certo! Consegui o que estava precisando....listou todas as tabelas de que precisava saber!Muito obrigada novamente!E....desculpe.... :rolleyes:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.