sistemas de banco de dados - sbdilmerio/gbc043/notasdeaula/bccsbd0... · 2020-03-12 · banco de...
TRANSCRIPT
![Page 1: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/1.jpg)
GBC043–Sistemas de Banco de Dados (SBD)
Plano de Ensino (Versão Preliminar)
2020/3.AARE.Etapa 1
Ilmério Reis da Silvailmerio arroba ufu.brwww.facom.ufu.br/~ilmerio/GBC043MS Teams: GBC043.2020/3.T1UFU/FACOM
![Page 2: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/2.jpg)
Página:2
Motivação (Justificativa)
Por que…
…SBD é essencial para qualquer organização;
![Page 3: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/3.jpg)
Página:3
Motivação (Justificativa)
Por que…
…SBD é essencial para qualquer organização;
...o conteúdo da disciplina é fundamental para a Formação Tecnológica na área de Computação e Informática; e
![Page 4: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/4.jpg)
Página:4
Motivação (Justificativa)
Por que…
…SBD é essencial para qualquer organização;
...o conteúdo da disciplina é fundamental para a Formação Tecnológica na área de Computação e Informática; e
...as técnicas e formalismos apresentados são importantes no desenvolvimento profissional e na atuação do egresso.
![Page 5: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/5.jpg)
Página:5
Objetivo Geral
Para...
...Capacitar o aluno a utilizar princípios e ferramentas teóricas para modelar a semântica de uma aplicação com abordagem de banco de dados; e
![Page 6: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/6.jpg)
Página:6
Objetivo Geral
Para...
...Capacitar o aluno a utilizar princípios e ferramentas teóricas para modelar a semântica de uma aplicação com abordagem de banco de dados; e
...Capacitar o aluno a implementar sistemas de informação utilizando um
Sistema Gerenciador de Banco de Dados-SGBD.
![Page 7: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/7.jpg)
Página:7
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
![Page 8: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/8.jpg)
Página:8
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
2 projetar um esquema de banco de dados e implantar um banco de dados em um servidor;
![Page 9: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/9.jpg)
Página:9
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
2 projetar um esquema de banco de dados e implantar um banco de dados em um servidor;
3 usar uma linguagem de manipulação de dados para inserção, consultas e atualização do banco de dados;
![Page 10: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/10.jpg)
Página:10
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
2 projetar um esquema de banco de dados e implantar um banco de dados em um servidor;
3 usar uma linguagem de manipulação de dados para inserção, consultas e atualização do banco de dados;
4 implementar visões lógicas do banco de dados;
![Page 11: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/11.jpg)
Página:11
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
2 projetar um esquema de banco de dados e implantar um banco de dados em um servidor;
3 usar uma linguagem de manipulação de dados para inserção, consultas e atualização do banco de dados;
4 implementar visões lógicas do banco de dados;
5 usar uma linguagem de manipulação de dados embutida em uma linguagens de desenvolvimento de aplicações;
![Page 12: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/12.jpg)
Página:12
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
2 projetar um esquema de banco de dados e implantar um banco de dados em um servidor;
3 usar uma linguagem de manipulação de dados para inserção, consultas e atualização do banco de dados;
4 implementar visões lógicas do banco de dados;
5 usar uma linguagem de manipulação de dados embutida em uma linguagens de desenvolvimento de aplicações;
6 usar uma linguagem procedural que executa no servidor por meio de funções;
![Page 13: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/13.jpg)
Página:13
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
2 projetar um esquema de banco de dados e implantar um banco de dados em um servidor;
3 usar uma linguagem de manipulação de dados para inserção, consultas e atualização do banco de dados;
4 implementar visões lógicas do banco de dados;
5 usar uma linguagem de manipulação de dados embutida em uma linguagens de desenvolvimento de aplicações;
6 usar uma linguagem procedural que executa no servidor por meio de funções;
7 usar uma linguagem procedural no servidor para implementar regras ativas (gatilhos);
![Page 14: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/14.jpg)
Página:14
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
2 projetar um esquema de banco de dados e implantar um banco de dados em um servidor;
3 usar uma linguagem de manipulação de dados para inserção, consultas e atualização do banco de dados;
4 implementar visões lógicas do banco de dados;
5 usar uma linguagem de manipulação de dados embutida em uma linguagens de desenvolvimento de aplicações;
6 usar uma linguagem procedural que executa no servidor por meio de funções;
7 usar uma linguagem procedural no servidor para implementar regras ativas (gatilhos);
8 implementar controles de segurança e acesso aos dados do banco de dados; e
![Page 15: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/15.jpg)
Página:15
Objetivos EspecíficosPara capacitar o aluno a:
1 interagir com um SGBD instalado em um servidor, aplicando os conceitos de arquitetura de SGBD;
2 projetar um esquema de banco de dados e implantar um banco de dados em um servidor;
3 usar uma linguagem de manipulação de dados para inserção, consultas e atualização do banco de dados;
4 implementar visões lógicas do banco de dados;
5 usar uma linguagem de manipulação de dados embutida em uma linguagens de desenvolvimento de aplicações;
6 usar uma linguagem procedural que executa no servidor por meio de funções;
7 usar uma linguagem procedural no servidor para implementar regras ativas (gatilhos);
8 implementar controles de segurança e acesso aos dados do banco de dados; e
9 implementar objetos complexos armazenados em um SGBD e a definir estratégias e recursos necessários para implementação de banco de dados distribuídos.
![Page 16: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/16.jpg)
Página:16
Ementa
Arquitetura de um Sistema de Banco de Dados. Modelo Conceitual de Entidades e Relacionamentos. Modelo Relacional. Linguagem de Definição de Dados. Linguagens de Manipulação de Dados. Projeto de Banco de Dados: dependência funcional, chaves, normalização, visões. Transações, controle de concorrência e recuperação de falhas. Implementação de Aplicações usando Sistemas de Gerenciamento de Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco de dados, linguagem SQL embutida em linguagens de programação. Comunicação entre aplicação ("front-end") e o SGBD. Introdução a Modelo de Dados Orientado a Objetos. Introdução a Banco de Dados Distribuídos.
![Page 17: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/17.jpg)
Página:17
Programa Teórico – Visão Panorâmica
I) Sistemas de BD, Modelos de Dados e Projeto de BD;
![Page 18: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/18.jpg)
Página:18
Programa Teórico – Visão Panorâmica
I) Sistemas de BD, Modelos de Dados e Projeto de BD;
II) Manipulação de Dados;
![Page 19: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/19.jpg)
Página:19
Programa Teórico – Visão Panorâmica
I) Sistemas de BD, Modelos de Dados e Projeto de BD;
II) Manipulação de Dados;
III) Linguagem Procedural no Servidor, Transações e
Controle de Concorrência; e
![Page 20: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/20.jpg)
Página:20
Programa Teórico – Visão Panorâmica
I) Sistemas de BD, Modelos de Dados e Projeto de BD;
II) Manipulação de Dados;
III) Linguagem Procedural no Servidor, Transações e
Controle de Concorrência; e
IV) Tópicos em BD.
![Page 21: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/21.jpg)
Página:21
Programa Prático – Visão Panorâmica
V) Projeto e implementação de Sistemas de Banco de Dados.
![Page 22: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/22.jpg)
Página:22
Ia) Introdução a Sistemas de BD
Conceitos em SBD:
Modelos, esquemas e instâncias;
![Page 23: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/23.jpg)
Página:23
Ia) Introdução a Sistemas de BD
Conceitos em SBD:
Modelos, esquemas e instâncias; Níveis de abstração;
![Page 24: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/24.jpg)
Página:24
Ia) Introdução a Sistemas de BD
Conceitos em SBD:
Modelos, esquemas e instâncias; Níveis de abstração; Linguagens deDescrição de Dados (DDL);
![Page 25: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/25.jpg)
Página:25
Ia) Introdução a Sistemas de BD
Conceitos em SBD:
Modelos, esquemas e instâncias; Níveis de abstração; Linguagem de Descrição de Dados (DDL); Linguagem de Manipulação de Dados (DML); e
![Page 26: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/26.jpg)
Página:26
Ia) Introdução a Sistemas de BD
Conceitos em SBD:
Modelos, esquemas e instâncias; Níveis de abstração; Linguagem de Descrição de Dados (DDL); Linguagem de Manipulação de Dados (DML); e Arquitetura de um SBD.
![Page 27: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/27.jpg)
Página:27
Ib) Modelagem
• Modelo Conceitual: Modelo de Entidade e Relacionamento (ER) e ER estendido (EER);
![Page 28: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/28.jpg)
Página:28
Ib) Modelagem
• Modelo Conceitual: Modelo de Entidade e Relacionamento (ER) e ER estendido (EER);
• Modelo Lógico: Modelo Relacional; e
![Page 29: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/29.jpg)
Página:29
Ib) Modelagem
• Modelo Conceitual: Modelo de Entidade e Relacionamento (ER) e ER estendido (EER);
• Modelo Lógico: Modelo Relacional; e• Mapeamento ER, EER para Modelo Relacional;
![Page 30: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/30.jpg)
Página:30
Ic) Projeto de BD
• Teoria de Dependências e Formas Normais;
![Page 31: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/31.jpg)
Página:31
Ic) Projeto de BD
• Teoria de Dependências e Formas Normais;• Projeto Físico;
![Page 32: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/32.jpg)
Página:32
Ic) Projeto de BD
• Teoria de Dependências e Formas Normais;• Projeto Físico;• Linguagem de Descrição de Dados – SQL/DDL – Parte 1• (Comandos de criação, alteração e remoção de tabelas); e
![Page 33: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/33.jpg)
Página:33
Ic) Projeto de BD
• Teoria de Dependências e Formas Normais;• Projeto Físico;• Linguagem de Descrição de Dados – SQL/DDL – Parte 1;• (Comandos de criação, alteração e remoção de tabelas); e• (Algoritmos de projeto de BD)
![Page 34: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/34.jpg)
Página:34
IIa) SQL
Linguagem de Manipulação de Dados – SQL/DML:– Comandos de inserção de tuplas em tabelas;– Comandos de alteração e remoção de tuplas; e– Comandos de consulta (simples, aninhadas junção,
agregação e consultas recursivas).; e
![Page 35: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/35.jpg)
Página:35
IIa) SQL
Linguagem de Manipulação de Dados - SQL/DML– Comandos de inserção de tuplas em tabelas;– Comandos de alteração e remoção de tuplas; e– Comandos de consulta (simples, aninhadas,
junção, agregação e consultas recursivas).e;
Linguagem SQL/DDL – Parte 2– Definição de visões;– Especificação de restrições em bancos de dados; e– Evolução de esquemas de banco de dados.
![Page 36: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/36.jpg)
Página:36
IIb) Manipulação de Dados no Modelo R
• Álgebra Relacional; e
![Page 37: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/37.jpg)
Página:37
IIb) Manipulação de Dados no Modelo R
• Álgebra Relacional; e
• (Cálculo Relacional).
![Page 38: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/38.jpg)
Página:38
IIIa) Linguagem procedural no servidor
Funções em PL/pgSQL; e
![Page 39: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/39.jpg)
Página:39
IIIa) Linguagem procedural no servidor
Funções em PL/pgSQL; e
Gatilhos em PL/pgSQL.
![Page 40: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/40.jpg)
Página:40
IIIb) Transações e Controle de Concorrência
Conceito de transação/ propriedade ACID;
![Page 41: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/41.jpg)
Página:41
IIIb) Transações e Controle de Concorrência
Conceito de transação/ propriedade ACID; Controle de concorrência: conceito; bloqueio e deadlock;
escalonamentos; serialização; e protocolos; e
![Page 42: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/42.jpg)
Página:42
IIIb) Transações e Controle de Concorrência
Conceito de transação/ propriedade ACID; Controle de concorrência: conceito; bloqueio e deadlock;
escalonamentos; serialização; e protocolos; e Processo de recuperação de falhas.
![Page 43: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/43.jpg)
Página:43
IIIc) Tópicos em BD
(Banco de dados de objeto e objeto-relacional)
(Banco de dados distribuído)
![Page 44: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/44.jpg)
Página:44
V) Programa Prático
Modelagem de Dados e implementação em um SGBD Especificação de uma aplicação a ser implementada por
intermédio de um SGBD;
![Page 45: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/45.jpg)
Página:45
V) Programa Prático
Modelagem de Dados e implementação em um SGBD Especificação de uma aplicação a ser implementada por
intermédio de um SGBD; Projeto conceitual (Modelo ER e EER);
![Page 46: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/46.jpg)
Página:46
V) Programa Prático
Modelagem de Dados e implementação em um SGBD Especificação de uma aplicação a ser implementada por
intermédio de um SGBD; Projeto conceitual (Modelo ER e EER); Projeto lógico (MR);
![Page 47: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/47.jpg)
Página:47
V) Programa Prático
Modelagem de Dados e implementação em um SGBD Especificação de uma aplicação a ser implementada por
intermédio de um SGBD; Projeto conceitual (Modelo ER e EER); Projeto lógico (MR); Implementação do MR usando um SGBD (PostgreSQL);
![Page 48: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/48.jpg)
Página:48
V) Programa Prático
Modelagem de Dados e implementação em um SGBD Especificação de uma aplicação a ser implementada por
intermédio de um SGBD; Projeto conceitual (Modelo ER e EER); Projeto lógico (MR); Implementação do MR usando um SGBD (PostgreSQL); Implementação de consultas em um SGBD (PostgreSQL);
![Page 49: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/49.jpg)
Página:49
V) Programa Prático
Modelagem de Dados e implementação em um SGBD Especificação de uma aplicação a ser implementada por
intermédio de um SGBD; Projeto conceitual (Modelo ER e EER); Projeto lógico (MR); Implementação do MR usando um SGBD (PostgreSQL); Implementação de consultas em um SGBD (PostgreSQL); Implementação de SQL embutida em linguagem hospedeira;
![Page 50: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/50.jpg)
Página:50
V) Programa Prático
Modelagem de Dados e implementação em um SGBD Especificação de uma aplicação a ser implementada por
intermédio de um SGBD; Projeto conceitual (Modelo ER e EER); Projeto lógico (MR); Implementação do MR usando um SGBD (PostgreSQL); Implementação de consultas em um SGBD (PostgreSQL); Implementação de SQL embutida em linguagem hospedeira; Implementação de Funções e Gatilhos em um SGBD
(PostgreSQL); e
![Page 51: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/51.jpg)
Página:51
V) Programa Prático
Modelagem de Dados e implementação em um SGBD Especificação de uma aplicação a ser implementada por
intermédio de um SGBD; Projeto conceitual (Modelo ER e EER); Projeto lógico (MR); Implementação do MR usando um SGBD (PostgreSQL); Implementação de consultas em um SGBD (PostgreSQL); Implementação de SQL embutida em linguagem hospedeira; Implementação de Funções e Gatilhos em um SGBD
(PostgreSQL); e Execução de transações, controle de concorrência e
recuperação de falhas em um SGBD.
![Page 52: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/52.jpg)
Página:52
Metodologia
• Aulas expositivas síncronas por meio de reuniões virtuais (cerca de 50% da CH de 90h), incluindo exemplos e exercícios, sendo as implementações no PostgreSQL;
![Page 53: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/53.jpg)
Página:53
Metodologia
• Aulas expositivas síncronas por meio de reuniões virtuais (cerca de 50% da CH de 90h), incluindo exemplos e exercícios, sendo as implementações no PostgreSQL;
• Vídeos, roteiros e listas de exercícios como atividades assíncronas; e
![Page 54: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/54.jpg)
Página:54
Metodologia
• Aulas expositivas síncronas por meio de reuniões virtuais (cerca de 50% da CH de 90h), incluindo exemplos e exercícios, sendo as implementações no PostgreSQL;
• Vídeos, roteiros e listas de exercícios como atividades assíncronas; e
• Projeto e implementação de um protótipo de aplicação transacional, usando um SGBD e linguagem com SQL Embutida;
![Page 55: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/55.jpg)
Página:55
Horário de Atendimento
• Horário preferencial de atendimento virtual, individual ou em grupo:
4ª-feira: 14h50 – 16h30;
OBS: solicitar agendamento, enviando e-mail ao professor até o
final do dia anterior, incluindo o assunto; e havendo impedimento no horário acima, solicitar
atendimento em outro horário, desde que acompanhado de justificativa.
![Page 56: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/56.jpg)
Página:56
Avaliações – Notas Parciais
SEJAM:
• ne : soma de notas de exercícios e laboratórios, ne<=25
• ni : nota de implementação de trabalho semestral, n
i<=25
• np : nota parcial prática, onde
np = ne + ni , logo np<=50
• n1, n2 e n3 : notas da 1ª, 2ª e 3ª provas, n1, n2 e n3 <= 25
• nt : nota parcial teórica, onde
nt = n1 + n2 + n3 - mínimo (n1, n2, n3), logo nt<=50
![Page 57: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/57.jpg)
Página:57
Avaliações – Nota Final
NOTA_FINAL(nt, np) RETURN INT:
IF (nt >= 25 AND np >= 25) THEN nf := nt+np; ELSE WITH tnotas(nota) AS (SELECT 59 UNION SELECT (nt + np)) SELECT MIN (nota) FROM tnotas INTO nf; END IF;
RETURN nf;
![Page 58: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/58.jpg)
Página:58
Avaliações – Situação Final
SITUAÇÃO_FINAL(faltas ,nt ,np) RETURN TEXT:
nf ::= NOTA_FINAL(nt ,np)
IF ( faltas < 28) THEN IF (nf >= 60) THEN sf:=''Aprovado'' ; ELSE sf:=''Reprovado''; END IF; ELSE sf:=''Reprovado por Frequência''; END IF;
RETURN sf;
![Page 59: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/59.jpg)
Página:59
Bibliografia - Livros
[EN] R. Elmasri/ S. B. Navathe: Sistemas de Banco de Dados – Fundamentos e aplicações, tradução da 6a. ed. [por] Daniel Vieira, São Paulo, Pearson Addison Wesley, 2011.
[RG] R. Ramakrishnan/ J. Gehrke: Sistema de Gerenciamento de Banco de Dados. Tradução da 3a. ed. [por] P Fernandes et. al., São Paulo, McGraw-Hill, 2008.
[SK] A. Silberschatz/ H. F. Korth/ S. Sudarshan: Sistema de Banco de Dados, tradução da 6a. ed. [por] Daniel Vieira, Rio de Janeiro, Elsevier, 2012.
![Page 60: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/60.jpg)
Página:60
Bibliografia - Sítios conteúdo Teórico
[ER] ER Diagram Tutorial in DBMS, https://www.guru99.com/er-diagram-tutorial-dbms.html, Acesso 2020
[SQL] SQL Tutorial, https://www.w3schools.com/sql/default.asp, Acesso 2020
[RDBMS] RDBMS QUESTIONS, https://www.sanfoundry.com/1000-rdbms-questions-answers, Acesso 2020
[GBC043] Sistemas de Banco de Dados, http://www.facom.ufu.br/~ilmerio/GBC043/, Acesso 2020
![Page 61: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/61.jpg)
Página:61
Bibliografia - Sítios conteúdo Prático
[PG] PostgreSQL global development group (Manuais), http://www.postgresql.org/docs, Acesso 2020
(A versão do servidor PostgreSQL no laboratório da FACOM é a 9.6.13 rodando sob o Linux, 64-bit, mas o acesso pode ser feito por meio de cliente em Windows ou Linux, por exemplo PgAdmin IV)
[GBC043] Sistemas de Banco de Dados, http://www.facom.ufu.br/~ilmerio/GBC043/, Acesso 2020
![Page 62: SISTEMAS DE BANCO DE DADOS - SBDilmerio/GBC043/notasdeaula/bccSbd0... · 2020-03-12 · Banco de Dados: definição e manipulação de dados; linguagem procedural no servidor de banco](https://reader034.vdocuments.com.br/reader034/viewer/2022050119/5f4faf3d42407e25d8544f55/html5/thumbnails/62.jpg)
Página:62
FIM – Plano de Curso