Jump to content
vdso

Dicionário de Dados

Recommended Posts

Bom dia! Sou novo aqui no forum e tambem estou iniciando com sql, onde trabalho preciso encontrar uma determinada tabela e me falaram para procurar no dicionário de dados, como faço isso?

Share this post


Link to post
Share on other sites

vdso

Para o caso do SQL Server:

 

Como consta em verbete da Wikipedia, “Em bancos de dados relacionais o esquema de informações (information_schema) é um conjunto padrão ANSI de exibições somente leitura que fornecem informações sobre todas as tabelas, exibições, colunas e procedimentos em um banco de dados”. O SQL Server permite obter metadados segundo esse padrão.

 

Cada banco de dados no SQL Server contém o seu próprio esquema de informações, denominado INFORMATION_SCHEMA. Uma forma de obter os metadados é

Exemplo:
SELECT *
  FROM bancodedados.INFORMATION_SCHEMA.objeto
 WHERE 1 = 1

Os objetos disponíveis segundo o padrão ISO estão detalhados na documentação do SQL Server, iniciando por System Information Schema Views. Por exemplo, para listar as tabelas de um banco de dados há o objeto TABLES.

 

SELECT * FROM db_usuario.INFORMATION_SCHEMA.table WHERE 1;

 

Há outras formas de se obter os metadados no SQL Server, inclusive com mais informações, mas como introdução me parece que o uso de INFORMATION_SCHEMA será suficiente. Entretanto, caso tenha interesse em aprofundar nos metadados do SQL Server, encontrará documentação a respeito em System Catalog Views.

 

Artigos:

  1. What is a SQL Server Data Dictionary?
  2. SQL Server System Views: The Basics

 

< retirado da fonte: pt.stackoverflow.com/questions/300373/data-dictionary-do-sql-server >

 

Se a resposta lhe for útil, não esqueça de agradescer o POST e votar positivo.

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By DinhoPHP
      Olá!
      Alguém pode me dar uma luz sobre fazer um ORDER BY, hora ASC ou hora DESC? Por favor! Estou utilizando PHP e JS no projeto.
       
      $pegadados = $pdo->prepare("SELECT * FROM produtos WHERE categoria LIKE '%$dataSearch%' OR marca LIKE '%$dataSearch%' OR produto LIKE '%$dataSearch%' OR modelo LIKE '%$dataSearch%' OR descricao LIKE '%$dataSearch%' ORDER BY $filter $filter2");
    • By DinhoPHP
      Olá!
      Alguém pode me dar uma luz sobre fazer um ORDER BY, hora ASC ou hora DESC? Por favor! Estou utilizando PHP e JS no projeto.
       
      $pegadados = $pdo->prepare("SELECT * FROM produtos WHERE categoria LIKE '%$dataSearch%' OR marca LIKE '%$dataSearch%' OR produto LIKE '%$dataSearch%' OR modelo LIKE '%$dataSearch%' OR descricao LIKE '%$dataSearch%' ORDER BY $filter $filter2");
    • By Alex Sandro de Oliveira
      Sou novo em desenvolvimento, alguem poderia me ajudar; pois estou fazendo um trabalho com quantidade de atividade executada no dia, como mostra a tabela abaixo o problema é que dia 02 nao fez nada e queria que viesse como zero.
       
       
      Select left(right(str_to_date(Data,'%d/%m/%Y'),2),8) AS DT,                                        
      SUM('1') as 'Soma'                                            
      from toa 
      where Estado like 'Concl%' and tipo_da_atividade in ('Instalacao','Instalacao Banda Larga + VoIP') 
      group by Data
      01 99 03 181 04 177 05 206
    • By Pedro Batista Lopes
      Olá pessoal alguém pode me ajudar estou com uma duvida, espero que vocês consigam me ajudar,
      Faço uma busca no banco de dados com mysql, depois faço um laço de repetição foreach e pego os dados do banco e jogo em uma tabel, 
      gostaria de que um campo desse laço se repetisse varias vezes.
      No banco ele pegas as informações de nota fiscal, cliente,nome do cliente e a soma das notas por um período de tempo,
      gostaria que repetisse esse período, que no caso é um ano de janeiro a dezembro.
      segue o codigo.
      </form> <?php $dataIncio = $_POST['data-ini']; $dataFim = $_POST['data-fim']; $dataIncio = date('d/m/Y', strtotime($dataIncio)); $dataFim = date('d/m/Y', strtotime($dataFim)); $buscaNotas = $db->prepare("select a.empresa, a.cliente, b.nom_cliente, e.cod_uni_feder, d.cod_repres, b.cod_tip_cli, count(a.nota_fiscal) as QTD_MES from fat_nf_mestre a join clientes b on (b.cod_cliente = a.cliente) join fat_nf_item c on (c.empresa = a.empresa and c.trans_nota_fiscal = a.trans_nota_fiscal) join pedidos d on (d.cod_empresa = c.empresa and d.num_pedido = c.pedido) join cidades e on (e.cod_cidade = b.cod_cidade) where a.empresa = '10' and dat_hor_emissao between EXTEND(MDY(01,01,2019)) and EXTEND(MDY(01,30,2019)) // esse é o campo que gostaria que repetisse a data está ///01/01/2019 a 01/30/2019 gostaria de um jeito para mudar 01/02//2019 a 30/02/2019 assim por diante. and d.cod_tip_carteira = '1' --and b.nom_cliente = 'MAGAZINE LUIZA S/A' --and b.cod_cliente = '047960950075482' and c.seq_item_nf = '1' and a.sit_nota_fiscal <> 'C' group by 1,2,3,4,5,6"); $buscaNotas->execute(); $linha = $buscaNotas->fetchAll(PDO::FETCH_ASSOC); ?> <table border="1px solid black" class="table col-sm-12 table-striped table-hover"> <thead class="thead-dark "> <tr> <th>Empresa</th> <th>Cliente</th> <th>Nome do cliente</th> <th>Uni_Feder</th> <th>Codigo Representante</th> <th>Cod_tipo_cli</th> <th>janeiro</th>// aqui eu faria janeiro, feveiro, março, abril.....até dezembro <th>Fevereiro</th> </tr> </thead> <?php foreach ($linha as $listar) { ?> <tr> <td><?= $listar['empresa'];?></td> <td><?=$listar['cliente']; ?></td> <td><?=$listar['nom_cliente']; ?></td> <td><?=$listar['cod_uni_feder']; ?></td> <td><?=$listar['cod_repres']; ?></td> <td><?=$listar['cod_tip_cli']; ?></td> <td><?=$listar['qtd_mes']; ?></td> // aqui é a saida onde queria que saisse o restante dos dados. </tr> <?php } ?> </table> <?php   
    • By device
      Olá pessoal. Bom dia...
      Preciso somar campos de uma tabela, mas de acordo com critérios que estão na base de dados
      Lá tenho lançado valores como segue.
      MES - ANO - ITEM - VALOR
      O campo mes vai de Janeiro a dezembro, setados em Combobox
      O campo ANO, ITEM selecionados tb em ComboBox e Valor preenchido em campo Edit
      Agora é o problema. 
      Preciso filtrar a soma de acordo com o MES, ANO e ITEM e somar seus valores que estão nos campos Edit
      Por exemplo. 
      Somar todos os Valores, de acordo com o MES, ANO e ITEM (farmácia ou mercado) por exemplo e colocar em uma var.
      O Combobox ITEM, assim como mes de 30 dias e Ano de 2019 à 20xx, tem itens, como Farmacia, mercado, medico, dentista, exames, etc    
      Alguma santa alma poderia dar uma ajuda?  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.