VIEW E INDEX NOS BANCOS DE DADOS (VISÃO E INDICE)

SQL Server

SQL

MySQL

PostgreSQL

NoSQL

Oracle

Modelagem

SQLite

Firebird

28/11/2014

1 - QUAL A NECESSIDAE DA CRIAÇÃO DE VIEW E INDEX NOS BANCOS DE DADOS?
2 - SERÁ QUE SE EU CRIAR UMA BANCO DE DADOS SEM UMA VIEW OU UM INDEX ELE NÃO FUNCIONA CORRECTAMENTE, DESDE FACENDO UMA CONSULTA OU EXECUNTANDO OUTRO COMANDO?

NOTA: SEI CRIA-LOS MAIS NÃO SEI PARA QUE CRIA-LOS, QUAL O SEI REAL USO, A SUA REAL NECESSIDADE, ALGUÉM PODE ME EXPLICAR POR FAVOR.

ANACLETO BUNGA.
Anacleto Linux

Anacleto Linux

Curtidas 0

Melhor post

Joel Rodrigues

Joel Rodrigues

28/11/2014

Views e índices são objetos de bancos de dados , assim como tabelas e procedures. Você não é obrigado a criá-los (resposta 2).
Views são basicamente consultas pré programadas que você usa com frequência. Criando uma view, você evitar de ficar fazendo joins, listando várias tabelas, criando alias, etc. Você passa a fazer a consulta sobre a view, que já encapsula toda a lógica da consulta.
Índices são utilizados em geral para otimizar consultas, atuando sobre colunas que geralmente são chaves das tabelas.
Enfim, pesquisando na net você acha muito conteúdo, só precisa ler um pouco.
GOSTEI 2

Mais Respostas

Sds

Sds

28/11/2014

Boa tarde, Anacleto!

Posso ti responder com base no pouco conhecimento que tenho.

Índices auxiliam na busca de dados dentro das tabelas, ou seja, quando você realiza uma consulta, o índice informará onde o dado daquela tupla que será retornado no [i]select[/i] estará contido e te retornará mais rapidamente. O conceito é parecido com um índice de um livro mesmo (para índices non-clustered).
Em bancos criados em exemplos de faculdade, por exemplo, não é necessário se preocupar com este objeto, pois não irá interferir no estudo e nem na usabilidade. Caso queira entender melhor como ela é estruturada, procure por Árvore B-Tree.

As views nada mais são do que SELECTS armazenados. São blocos de SQL que retornam alguma informação do banco. É bastante utilizado pois não precisamos realizar sempre o select gigantesco toda vez que quisermos verificar uma informação do banco.

Por exemplo:


CREATE VIEW viewTeste AS
SELECT Matricula, Nome, DTnascimento, Endereço FROM Alunos WHERE Nome LIKE "%Basile"


Para selecionar todos estes dados acima, basta executar:


SELECT * FROM viewTeste
GOSTEI 1
João Françozo

João Françozo

28/11/2014

Boa tarde ANACLETO BUNGA,

Os indexes são praticamente obrigatórios em um banco de dados.

Um exemplo simples.

No Oracle eu uso um plano de execução para analisar o SQL do desenvolvedor, caso o mesmo faça dessa forma, eu já encontrei em vários clientes esses SQL escrito de forma errada.

SELECT
* FROM TBTESTE
WHERE
NOME LIKE '%TAL%'

CASO TIVER UM INDEXES NO NOME, O ORACLE NÃO ACESSAR OS DADOS FULL E SIM POR INDEXES JÁ TENDO UM RETORNO MELHOR, UMA DICA NUNCA USAR * NA CLAUSULA SELECT, O ORACLE TEM UM MODO DE FAZER A INTERPRETAÇÃO.
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

28/11/2014

Anacleto, sua dúvida foi sanada?
Pedimos que, por favor, retorne aos tópicos que abriu para dar um feedback àqueles que tentaram lhe ajudar.
GOSTEI 0
POSTAR