Escolar Documentos
Profissional Documentos
Cultura Documentos
1 2
30 30
1 2
Procedimentos armazenados
Assuntos abordados:
Index e view
Objetivos:
Trigger
Conhecer as estruturas auxiliares e
transações Stored procedure
Function
3 4
3 4
Index e View
Antes de tudo:
Tabela heap (ausência de índice)
email varchar(50));
select nome, email from pessoa
where nome = ‘Vitoria’;
5 6
Index e View Index e View
Tabela heap
Índice (index) – Estruturas que auxiliam na
organização e na consulta de uma tabela
Facilitam o acesso aos dados
Otimizam o desempenho das consultas
7 8
7 8
Apresentação de índices
B-Tree Non-Clustered
9 10
11 12
Transações Transações
Conjunto de instruções em sequência que são
executados como um bloco único e Propriedades ACID:
indivisível, com início e fim (término) Atomicidade – Bloco único. Baseia-se no
Comandos: princípio do “tudo ou nada”
Commit – Confirma a execução em Consistência – Finalizada a transação,
13
30 definitivo 14
30 todas as regras e a integridade referencial
Rollback – Descarta todas as instruções devem ter sido respeitadas
executadas
Princípio do “tudo ou nada”
13 14
Transações Transações
Propriedades ACID:
Isolamento – Dados gerados de transação
Transação na prática:
não confirmada não são utilizados;
transações concorrentes, resultado igual Declaração
15
30 Durabilidade – Transação encerrada com 16
30
Nível de isolamento
sucesso, alterações definitivas Exemplo
15 16
Trigger
17 18
Trigger
Trigger na prática:
Criação Stored Procedure
Referências new e old
19
30
Apresentação de triggers 20
30
Exclusão
Exemplo
19 20
Apresentação de procedures
30 30
21 22
Function
User Defined Function – UDF (função
desenvolvida por um usuário)
Sintaticamente semelhante a uma stored
Function
procedure, mas ao final da execução sempre
retornará valor(es) de um tipo válido
23
30
24
30 Tipos de UDF (MySQL):
Escalares, que retornam apenas um valor
Composta, que retornam um conjunto de
valores
23 24
Function
Function na prática:
Declaração Cursor
Execução
25
30
Apresentação de functions 26
30
Exclusão
Exemplo
25 26
Cursor Cursor
Ciclo de vida:
Não
Realiza o acesso ao resultado linha a linha,
diferentemente dos resultados obtidos pelos
Declare Open Fetch Vazio? Close
comandos select, insert e delete, que
27
acessam várias linhas ao mesmo tempo 28
30 30
27 28
Cursor Agradecimento
Cursor na prática:
Declaração
Abertura Obrigado por sua atenção e muito sucesso
29 Execução 30 para você!
30 30
29 30
31
30
31