Mostrando postagens com marcador tabelas. Mostrar todas as postagens
Mostrando postagens com marcador tabelas. Mostrar todas as postagens

segunda-feira, 8 de novembro de 2010

Quando uma tabela foi criada?

Durante um processo de analise de algumas bases, onde estava sendo feita uma comparação de duas bases afim de garantir que os objetos/estrutura estavam iguais, identifiquei que alguns objetos estavam diferentes.

Diante disto precisei da seguinte informação (E creio que muita gente já fez a mesma pergunta): QUANDO ESTA TABELA FOI CRIADA???? Todo DBA já fez este questionamento....
Outro questionamento também é: QUANDO FOI A ÚLTIMA VEZ QUE MINHA TABELA SOFREU UMA ALTERAÇÃO?

Venho através deste post responder a estas perguntas.

Com a consulta abaixo conseguiremos responder ao questionamento:

SELECT SCHEMA_NAME(SCHEMA_ID) As Esquema, Name As Nome, Create_Date As Criacao, Modify_Date As Modificacao

FROM SYS.TABLES
ORDER BY Modificacao DESC

Através da SYS.TABLES temos algumas informações das tabelas de nosso banco.

Uma dica que gostaria que todos pudessem fazer, é averiguar sobre estas views de sistema.

Acessem o link: http://msdn.microsoft.com/pt-br/library/ms189783.aspx

e estudem sobre os principais tipos. Elas são muito utéis e ajudam muito a resolver vários problemas no processo de desenvolvimento.

Até mais,

Encontrando tabelas no SQL e no Oracle

Segue aqui informação importante e consideravel para agilizar busca de tabelas no SQL Server e também no Oracle.

Temos situações importantes em que precisamos encontrar algumas tabelas dentro do banco de dados. A medida em que o banco de nossa empresa vai crescendo, temos que ter formas rápidas de encontrar estes objetos.

No SQL 2008 temos duas formas:
SELECT * FROM SYS.TABLES e SELECT * FROM SYS.OBJECTS WHERE TYPE = 'U'

Onde na segunda consulta temos o filtro TYPE = 'U' que significa USER_TABLE, ou Tabela de Usuário. Pois temos no SQL o conceito de schema, que podemos ter objetos de mesmo nome mas em schemas diferentes.

No Oracle temos o seguinte comando:
SELECT * FROM DBA_TABLES ou SELECT * FROM USER_TABLES

Assim como no SQL o Oracle tem o conceito de owner ou o dono da tabela. O que significa isso?

Quando estamos no Oracle, acessamos sempre com algum usuário. Se estamos logados no Oracle com o usuário USER1, criamos a tabela CLIENTES e se logarmos com outro usuário, por exemplo, USER2 e rodarmos a segunda consulta buscando pela tabela CLIENTES nada será retornado.
Diferente da primeira consulta, que traz todas as tabelas independente do owner, a segunda filtra sempre pelo usuário logado naquela seção.

Então esta foi uma demonstração de como realizar busca de tabelas no SQL e no Oracle.