Como obter a lista de todos objetos de um banco de dados SQL Server
Nesta matéria do WebMundi.com, você aprenderá como obter a lista de todos objetos de um banco de dados SQL Server.
O MS SQL Server armazena as informações sobre os objetos de um banco de dados (tabelas, views, funções, etc.) em uma tabela de sistema, que é acessível a partir da visualização sysobjects (SQL 2000) ou sys.objects e sys.sysobjects (SQL 2005 , SQL 2008 e outros).
Muitas vezes, é necessário listar estes objetos ou buscar por um objeto especifico em seu banco de dados.
Para obter a lista de todos os objetos de um banco de dados SQL Server executa-se a query abaixo:
Select * from sysobjects
Caso seja necessário saber sobre a existência de um objeto especifico no banco de dados, pode-se utilizar o seguinte comando:
Select * from sysobjects where name like ‘NomedoObjeto’
Exemplo:
–Selecione o banco em que quer pesquisar o objeto
Use BdWebMundi
–Busca um objeto de nome TbWebMundi
Select * from sysobjects where name like ‘TbWebMundi’
É possível também listar os objetos por tipo, utilizando como filtro as colunas xtype ou type, dependendo da view, conforme abaixo:
SELECT * FROM sysobjects WHERE xtype = <tipo do objeto>
Abaixo as opções de tipos de objeto, para ser utilizado na query acima:
- C: Check constraint
-
D: Default constraint
F: Foreign Key constraint - L: Log
- P: Stored procedure
- PK: Primary Key constraint
- RF: Replication Filter stored procedure
- S: System table
- TR: Trigger
- U: User table
- UQ: Unique constraint
- V: View
- X: Extended stored procedure
- FN: Function
Exemplo:
–Selecione o banco em que quer pesquisar o objeto
Use BdWebMundi
— Retorna todas as Triggers (TR) do Banco: BdWebMundi
SELECT * FROM sysobjects WHERE xtype = ‘TR’
— Retorna todas as Functions (FN) do Banco: BdWebMundi
SELECT * FROM sysobjects WHERE xtype = ‘FN’
Obrigado
Espero que você tenha gostado desta matéria sobre como listar de os objetos de um banco de dados MS-SQL Server.