Você está na página 1de 6

Aula 6

Banco de Dados Conversa Inicial

1 2
30 30

Prof. Ricardo Sonaglio Albano

1 2

Procedimentos armazenados
Assuntos abordados:
Index e view
Objetivos:
Trigger
Conhecer as estruturas auxiliares e
transações Stored procedure
Function
3 4

Implementar códigos por meio de triggers,


30 30

stored procedures, funções e cursores Cursor

3 4

Index e View
Antes de tudo:
Tabela heap (ausência de índice)

Index e View Exemplo:


create table pessoa(
5 6 nome varchar(50),
30 30

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

Reduzem o uso de operações de I/O e, em


30 30

consequência, o uso de recursos do


servidor

7 8

Index e View Index e View

Índice mais usado:


Index na prática:
B-Tree (Balance Tree)
Criação e execução
Tipos:
9 10 Tempo de execução
B-Tree Clustered
30 30

Apresentação de índices
B-Tree Non-Clustered

9 10

Index e View Index e View

Visão (view) ou tabela virtual


Retorna um conjunto de dados baseados em
uma consulta predefinida View na prática:

Os dados retornados podem ser derivados de Criação e execução


11
30
uma ou mais tabelas 12
30
Exclusão
Trabalha em conjunto com o join, where e Apresentação de views
funções, além dos comandos insert, update e
delete para atualização de dados

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

Também conhecido como gatilho, está


diretamente relacionada a uma tabela
Ação disparada de forma automática em resposta
Trigger a um comando (insert, update ou delete)
Pode ocorrer antes ou depois da execução do
17
30
18
30
comando
Tipos (SQL ANSI):
Em nível de linha
Em nível de instrução

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

Stored Procedure Stored Procedure


Conjunto de instruções SQL que realiza tarefas
Procedures na prática:
diárias e repetitivas em um Banco de Dados
Criação
Utiliza instruções de seleção, controle, repetição,
declaração de variáveis e funções Execução
Possibilidade de realizar alterações em dados de Comandos condicionais e de repetição
21
tabelas, porém, sem retorno de valores 22

Apresentação de procedures
30 30

Parâmetros de entrada são opcionais


Exclusão
Pode ser executada pelas linguagens de
programação
Exemplo

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

Somente para leitura, ocorrendo de forma


sequencial e na ordem definida pelo select

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

Fechamento e liberação do cursor


Exemplo

29 30
31
30

31

Você também pode gostar