Baixe o app para aproveitar ainda mais
Prévia do material em texto
Programação de Banco de Dados Profa. Dra. Andréa Ono Sakai Sequence • Vimos que o sequence é um recurso do PostgreSQL para gerar números sequenciais. • E que para operar esta sequencia utilizamos as funções nextval, currval, setval. Criar uma sequence basta: • CREATE SEQUENCE <nome_da_sequencia>; • Podemos usar diversos parâmetros (opcional) para configurar uma sequence, são elas: • INCREMENT BY • MINVALUE • MAXVALUE • START WITH • CYCLE 1) Vamos criar uma sequence 2) Testando a sequencia de valores da seq1 3) De olho na sequencia que criamos: Veja o nome da sequencia Vamos acessar as propriedades desta sequencia 4) Crie uma nova sequencia configurando os parâmetros START WITH e INCREMENT BY O nextval sendo executado 3x. Sendo que, a sequencia começa (start 1) e será incrementada de 2 em 2. 5) Que tal definir um valor mínimo e um valor máximo para sua sequencia. • O valor mínimo será 1 e o valor máximo da sequence será 5. Quando o incremento e o valor inicial não é definido em uma nova sequence ele será respectivamente 1 e 1. 6) Execute o NEXVAL 7) Responda porque o erro do item 6 ocorre? 8) Agora em uma nova sequence (seq4) coloque: • START WTH 1 • MINVALUE 10 • MAXVALUE 50 • INCREMENT BY 5 9) Nova sequence • O que ocorre ao executá-la? • Resposta: 10) Coloque agora START WITH 15. • Execute o código e descreva o que ocorre quando executamos 9x • Resposta: 11) Crie uma nova sequencia seq5 conforme a seguir: • Execute 6x o select e conte o que aconteceu? E para que serve o parâmetro cycle. • Resposta: 12) É possível fazer um decremento em uma sequence? • Sim! Basta usar no INCREMENT BY um valor negativo. 13) Monte uma sequence (seq7) com valor mínimo e máximo e incremento de -2 14) Vamos fazer uma alteração na seq7. • Para fazer uma alteração em uma sequencia deve usar o ALTER SEQUENCE. • Faça essa alteração e veja o que ocorre executando o nextval. 15) Para deletar uma sequencia usa-se DROP SEQUENCE • Veja que a sequencia seq7 foi deletada. 16) Como criar uma sequencia e usar em um campo da tabela? • 16.1) Criar a sequence 16.2) Criar a tabela 16.3) Inserir os dados de uma pessoa na tabela. 16.4) Use o select para mostrar o registro cadastrado. 16.5) Insira mais 2 registro e veja o resultado. 16.5) Altere o incremento da seq8 para 2 e insira mais um registro. 17) Você pode inserir uma sequencia diretamente no INSERT. • 17.1) Primeiro vamos criar uma sequencia. 17.2) Vamos criar a tabela 17.3) Inserir os dados de um funcionário na tabela e use o select para mostrar o registro cadastrado. 17.4) Insira mais 2 registro e veja o resultado. Lembrando que o incremento configurado foi de 5 Insert com Query - Cópia Insert com Query - Cópia Insert com Query - Cópia Insert com Query – Valores de chave estrangeira Insert com Query – Valores de chave estrangeira Insert com Query – Valores de chave estrangeira Tarefa – Aula 05 • Com base no MER. Crie as tabelas em SQL usando as restrições de domínio e integridade. • Crie uma sequence para cada uma das tabelas e faça a inserção usando o comando nextval. Faça pelo menos 3 insert em cada tabela. • Fazer uso (1 vez) de um insert com query. • Entregar o Script em SQL.
Compartilhar