introdução plsql

63
Introdução a PL/SQL Ismael Soares quinta-feira, 23 de maio de 13

Upload: ismael

Post on 27-May-2015

1.103 views

Category:

Technology


4 download

DESCRIPTION

Introdução a PLSQL é um resumo das principais funcionalidades e opções que há na linguagem.

TRANSCRIPT

Page 1: Introdução PLSQL

Introdução a

PL/SQL

Ismael Soares

quinta-feira, 23 de maio de 13

Page 2: Introdução PLSQL

Procedure LanguageStructured Query Language

quinta-feira, 23 de maio de 13

Page 3: Introdução PLSQL

É uma linguagem de programação procedural da Oracle que estende a

linguagem SQL

quinta-feira, 23 de maio de 13

Page 4: Introdução PLSQL

Blocos de PL/SQL são passados e processados por uma PL/SQL Engine que pode estar dentro de uma ferramenta Oracle ou do Server.

Dados

Engine

Select

Begin

cursor

truncate Select

execute

SQL Executor

quinta-feira, 23 de maio de 13

Page 5: Introdução PLSQL

DML - Data Manipulation Language

DDL - Data Definition Language

quinta-feira, 23 de maio de 13

Page 6: Introdução PLSQL

Exemplos de DDL:

create table produto (produto_key number,descrição varchar2(100),etc....

);

drop sequence seq_produto;

alter table produto modify column descricao varchar2(300);

quinta-feira, 23 de maio de 13

Page 7: Introdução PLSQL

Exemplos de DML:

insert into produto (produto_key, descricao)values (seq_produto.nextval, ‘acucar’);

delete from produto where produto_key = 1;

update produto set descricao = ‘ovo de pascoa’where produto_key = 1;

quinta-feira, 23 de maio de 13

Page 8: Introdução PLSQL

PL/SQL pode ser usado em:

Type

Bloco anónimoProcedure

Trigger Package

Function

quinta-feira, 23 de maio de 13

Page 9: Introdução PLSQL

- Definição

- Edição

- Conclusão

Formada por 3 camadas

quinta-feira, 23 de maio de 13

Page 10: Introdução PLSQL

DECLAREVariáveis

SELECTIONcursor

BEGINInstruções procedimentais e SQL. Esta é a única seção do bloco que é indispensável e obrigatória.

EXCEPTIONTratamento de erro

END;/

quinta-feira, 23 de maio de 13

Page 11: Introdução PLSQL

Variáveis

quinta-feira, 23 de maio de 13

Page 12: Introdução PLSQL

Tipos

quinta-feira, 23 de maio de 13

Page 13: Introdução PLSQL

Declaração

quinta-feira, 23 de maio de 13

Page 14: Introdução PLSQL

Escopo

quinta-feira, 23 de maio de 13

Page 15: Introdução PLSQL

Atribuição

quinta-feira, 23 de maio de 13

Page 16: Introdução PLSQL

Operadores

quinta-feira, 23 de maio de 13

Page 17: Introdução PLSQL

Comparação

quinta-feira, 23 de maio de 13

Page 18: Introdução PLSQL

Busca

quinta-feira, 23 de maio de 13

Page 19: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 20: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 21: Introdução PLSQL

Condições

quinta-feira, 23 de maio de 13

Page 22: Introdução PLSQL

Fluxo

Condição

true falseCódigo

quinta-feira, 23 de maio de 13

Page 23: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 24: Introdução PLSQL

IF Eu recomendo!

quinta-feira, 23 de maio de 13

Page 25: Introdução PLSQL

IF-ELSE É melhor fazer dois IFs...

quinta-feira, 23 de maio de 13

Page 26: Introdução PLSQL

IF-ELSIF-ELSE Nossa!!! Não precisa de 3 IFs?

quinta-feira, 23 de maio de 13

Page 27: Introdução PLSQL

Case

Expressão

When 1Bloco 1

When 2Bloco 2

Default Bloco N

When 3Bloco 3

quinta-feira, 23 de maio de 13

Page 28: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 29: Introdução PLSQL

Loops

Condição

Código Condicional

true

false

quinta-feira, 23 de maio de 13

Page 30: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 31: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 32: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 33: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 34: Introdução PLSQL

Bloco anónimo

quinta-feira, 23 de maio de 13

Page 35: Introdução PLSQL

Exemplo bloco anónimo

quinta-feira, 23 de maio de 13

Page 36: Introdução PLSQL

Collections

quinta-feira, 23 de maio de 13

Page 37: Introdução PLSQL

Arrays

quinta-feira, 23 de maio de 13

Page 38: Introdução PLSQL

Index By

quinta-feira, 23 de maio de 13

Page 39: Introdução PLSQL

Nested table

quinta-feira, 23 de maio de 13

Page 40: Introdução PLSQL

Procedures

quinta-feira, 23 de maio de 13

Page 41: Introdução PLSQL

Fala ai Carneiro

Nada mais é que um bloco PL/SQL armazenado!

quinta-feira, 23 de maio de 13

Page 42: Introdução PLSQL

Simples assim?

quinta-feira, 23 de maio de 13

Page 43: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 44: Introdução PLSQL

Exemplo

quinta-feira, 23 de maio de 13

Page 45: Introdução PLSQL

Exemplo

quinta-feira, 23 de maio de 13

Page 46: Introdução PLSQL

Passando Parâmetros

quinta-feira, 23 de maio de 13

Page 47: Introdução PLSQL

Functions

quinta-feira, 23 de maio de 13

Page 48: Introdução PLSQL

Vai me dizer que é um Bloco armazenado

também?!

quinta-feira, 23 de maio de 13

Page 49: Introdução PLSQL

Hummm... É!

quinta-feira, 23 de maio de 13

Page 50: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 51: Introdução PLSQL

Exemplo

quinta-feira, 23 de maio de 13

Page 52: Introdução PLSQL

Triggers

quinta-feira, 23 de maio de 13

Page 53: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 54: Introdução PLSQL

Vantagens

Atualizar colunas calculadas

Força integridade referencialAuditoria

Validações de segurança

Garantir consistência dos dados

quinta-feira, 23 de maio de 13

Page 55: Introdução PLSQL

Exemplos

quinta-feira, 23 de maio de 13

Page 56: Introdução PLSQL

quinta-feira, 23 de maio de 13

Page 57: Introdução PLSQL

Packages

quinta-feira, 23 de maio de 13

Page 58: Introdução PLSQL

Pacote de procedimentos e funções

quinta-feira, 23 de maio de 13

Page 59: Introdução PLSQL

Specification

Body (definição)

quinta-feira, 23 de maio de 13

Page 60: Introdução PLSQL

Chamada apenas para elementos especificados

quinta-feira, 23 de maio de 13

Page 61: Introdução PLSQL

Exemplos

quinta-feira, 23 de maio de 13

Page 62: Introdução PLSQL

Exemplos

quinta-feira, 23 de maio de 13

Page 63: Introdução PLSQL

Obrigado

quinta-feira, 23 de maio de 13