A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Daniel Paulo dptsalvador@hotmail.com SQL Server 2016 Módulo II Daniel Paulo dptsalvador@hotmail.com.

Apresentações semelhantes


Apresentação em tema: "Daniel Paulo dptsalvador@hotmail.com SQL Server 2016 Módulo II Daniel Paulo dptsalvador@hotmail.com."— Transcrição da apresentação:

1 Daniel Paulo dptsalvador@hotmail.com
SQL Server Módulo II Daniel Paulo

2 Capítulo 4 – Customizando Consultas
Plano de Execução Ao executar uma transação o SQL verifica qual a melhor maneira para executar o comando e minimizar a utilização de recursos. Utilize o comando: CTRL + L para verificar o plano de execução estimado.

3 Capítulo 4 – Customizando Consultas
Dicas para construir consultas na fase de desenvolvimento Normalização CONSTRAINT Poucas colunas Evite campos binários Utilize FILETABLE Evite tabelas temporárias e cursores Nas consultas Evite asterisco (*) Filtre consultas Evite o operador LIKE Cuidado ao utilizar os HINTS Índices Evite consultas AD HOC

4 Capítulo 4 – Customizando Consultas
Índices Um índice torna mais rápida a busca numa tabela. Clustered (Clusterizado) – Ordena a estrutura da tabela. É permitido apenas 1 por tabela. NonClustered (Não clusterizado) – Cria uma estrutura lógica. É possível criar até 999 por tabela.

5 Capítulo 4 – Customizando Consultas
Índices compostos: são aqueles que possuem mais de um campo na definição do índice. INCLUDE: Com esta cláusula é possível adicionar mais campos ao índice. Caso todos os campos necessários para a consulta estejam no índice o SQL utiliza somente o índice. Excluindo índices

6 Capítulo 4 – Customizando Consultas
Otimizando consultas Verificar se o código esta correto Verificar a sequência de leitura das tabelas Utilizar índices Utilizar os recursos de processamento

7 Capítulo 4 – Customizando Consultas
HINTS É possível customizar (forçar) o SQL a sobrepor o Otimizador do SQL. Desta maneira, podemos definir como o SQL realizará a consulta. INDEX PAGLOCK TABLOCK UPDLOCK TABLOCKX NOLOCK READ PAST MAXDOP

8 Capítulo 4 – Customizando Consultas
Customizando bloqueios (HINT) Os bloqueio podem ser especificados no nível de: ROWLOCK : Linha (Padrão) PAGLOCK: Página de dados TABLOCK: Tabela UPDLOCK: Esta opção não obriga a utilização de shared lock. Outras transações tem acesso de leitura mas não de atualização. NOLOCK: Realiza leitura em transações não confirmadas. READPAST: Realiza a leitura dos dados que não estão bloqueados

9 Capítulo 4 – Customizando Consultas
Customizando bloqueios na Seção A configuração do nível de isolamento possibilita determinar qual será o comportamento padrão dos bloqueios dos comando existente em uma seção. Comando SET TRANSACTION ISOLATION LEVEL

10 Capítulo 4 – Customizando Consultas
READ COMMITED Especifica que as instruções não podem ler dados que foram modificados, mas que ainda não foram confirmados por outras transações READ COMMITED com READ_COMMITED_SNAPSHOT OFF Faz com que o SQL utiliza bloqueios compartilhados enquanto realiza a leitura. Com este nível não é possível fazer leituras sujas. READ_COMMITED com READ_COMMITED_SNAPSHOT ON Versionamento de Linhas Outras transações podem fazer atualizações Dados não ficam protegidos

11 Capítulo 4 – Customizando Consultas
READ UNCOMMITED Exerce a mesma função de NOLOCK Não gera shared locks Aceita leituras sujas

12 Capítulo 4 – Customizando Consultas
Serializable Tipo mais restrito Proíbe a alteração ou inserção de novas linhas que apresentam o mesmo critério da cláusula WHERE Utilizar apenas quando necessário

13 Capítulo 4 – Customizando Consultas
REPEATABLE READ Utiliza bloqueios do tipo SERIALIZABLE Leitura de dados somente do tipo COMMITED Leituras não repetidas e sujas não são permitidas

14 Capítulo 4 – Customizando Consultas
Laboratório páginas: 146 à 149


Carregar ppt "Daniel Paulo dptsalvador@hotmail.com SQL Server 2016 Módulo II Daniel Paulo dptsalvador@hotmail.com."

Apresentações semelhantes


Anúncios Google