Aula 001
Banco de Dados
PRONATEC
Programa Nacional de Acesso ao
Ensino Técnico e Emprego
PRONATEC
Programa Nacional de Acesso
ao Ensino Técnico e Emprego
1. BANCO DE DADOS
• Dado: em informática é tudo que pode ser
armazenado em dispositivos de memória. O
dado é bruto e armazenado como é. Ex: Sexo
• Informação: é o que podemos obter da
interpretação dos dados. Ex: Mulheres
cadastradas e menores de idade.
• BD: É um conjunto de dados armazenados de
forma lógica e correlacionados entre si e que
podem ser incluídos, alterados, excluídos e
consultados de forma a produzir informações
2. GA – Gerenciados de Arquivos
• É um tipo de Banco Dados mais antigo e
básico, nele os dados ficam em arquivos e
esses são relacionados entre si por meio de
aplicativos escritos em diversas linguagens
como: Delphi, Cobol, Java, Clipper, PHP
• Alguns exemplos de bancos de dados GA são:
Dbase, Clipper, FoxPro, Microsoft Access
• Os GA não tem software internos para
controle dos dados tais como consultar, incluir,
alterar, excluir. Somente podemos fazer isso
mediante linguagens de programação
3. SGBS – Sistema Gerenciados de Banco
de Dados
• É o mais moderno e melhor sistema para
controle de banco de dados disponível.
• Exemplos de SGBD´s são:
Firebird, MySQL, Oracle, Microsoft SQL
Server, PostGre
• Os SGBD´s tem como principal característica
conter em si mesmos tanto os dados e
relacionamentos quanto a parte de software
responsável pela definição e manipulação
desses. Ficando ainda encarregado da
segurança de acesso aos dados
4. GA x SGBD
• Os SGBD apresentam as seguintes características principais. Caso alguma
delas não esteja presente o candidato será um GA
• 1) Auto-contenção: o SGBD obrigatoriamente tem em sim mesmos tanto
dados, relacionamentos como aplicativos para manipular aqueles
• 2) Independência dos dados: a mudança nos dados ou em seus esquemas
não deve influir nos aplicativos que usam esses dados
• 3) Abstração dos dados: o programador não precisa saber o modo de
operação interna do SGBD, se precisar controlar uma duplicidade de
dados na aplicação então não é um SGBD e sim um GA
• 4) Visões: um SGBD deve permitir que visualizações de partes do banco
de dados sejam possíveis sem ter que usar de artifícios de programação
como cópias de tabelas
• 5) Transações: todo SGBD deve permitir confirmar ou cancelar grupo de
operações realizadas em bloco no banco sem a necessidade de
intervenção do programador do aplicativo
• 6) Acesso Automático: é a capacidade de evitar Dead-Lock
• Para ser considerado um SGBD ele deve ter “todas” as características
acima presentes ao mesmo tempo, caso contrário será um GA.
5. Características Operacionais SGBD
• Características operacionais desejáveis dos SGBD:
• 1) Controle de Redundância: redundância é a repetição do
mesmo dado em locais diferentes que poderão ficar
inconsistentes e devem ser evitadas, os SGBD têm em si
recursos para isso.
• 2) Controle de Acesso: o SGBD deve manter os dados
protegidos e usar níveis de acesso com autoridades
diferenciadas às informações
• 3) Interfaceamento: o SGBD deve fornecer ferramentas para
acesso aos dados de preferência de forma gráfica e por
linguagem SQL
• 4) Esquematização: Fornecer a compreensão dos dados e
seus relacionamentos se possível de forma gráfica
• 5) Controle de Integridade: os dados devem estar íntegros
sempre, apesar de múltiplos acessos e concorrência a eles
• 6) Backup: Apresentar facilidade de recuperação de falha
6. Usando Banco de Dados - GA
• Os Bancos de Dados do tipo Gerenciadores de Arquivos não
podem ser desconsiderados uma vez que são úteis para
pequenas aplicações de BD.
• Apesar dos GA possuírem menos recursos que os SGBD eles
são amplamente usados em softwares que necessitam de
boa performance e aplicativos desktop ou para pequenas
redes
• Todo GA precisa das seguintes três definições:
Tabelas, Estrutura das tabelas e Índices.
• Tabela: de acordo com o projeto do BD são as Entidades e
os Relacionamentos no DER da Análise de Sistemas
• Estrutura das Tabelas: são as colunas de cada tabela, bem
como os seus tipos, tamanhos e sua ordem
• Índices: são arquivos que servem para ordenar os dados nas
tabelas e auxiliar o programador na manutenção da
integridade das mesmas pelo controle das chaves
9. Componentes de um BD
• Gerenciador de Acesso ao Disco: utiliza-se o próprio
Sistema Operacional para acessar arquivos onde os dados e
regras estão guardados
• Compilador DDL: (Data Definition Language) linguagem de
definição dos dados que processa as definições do esquema
do banco de dados
• Dicionário de Dados: Contem detalhes do esquema, as
definições das tabelas, relacionamentos, índices, regras
• Processador do BD: responsável por fazer as atualizações no
BD: inclui, altera e exclui
• Processador de Pesquisa: responsável por fazer as consultas
aos dados do BD (comando select)
• Compilador DML: (Data Manipulating Language)
Linguagem de Manipulação de Dados. É a parte que
processa os comandos para incluir, alterar, excluir, consultar
e executar procedimentos e funções sobre os dados.
10. Abstração de Dados
• Um SGBD deve prover uma “visão abstrata” dos seus dados para
os usuários, isolando, desta forma detalhes internos da
arquitetura do BD.
• Existem três níveis de abstração: Nível de
armazenamento(Físico), Nível do conjunto do
usuário(Conceitual/Lógico) e Nível de visão do usuário
• Objetivo: obter independência física e lógica dos dados. Física:
pode-se mudar o esquema físico sem necessidade de alterar o
esquema conceitual. Lógica: pode-se mudar o esquema
conceitual sem a necessidade de modificar os programas
externos que usam o BD
11. Níveis de Abstração dos SGBD
• Físico: também chamado de “Esquema interno”, é o
nível mais baixo de abstração. Descreve como os
dados estão realmente armazenados, englobando
estruturas complexas de baixo nível.
• Conceitual (Lógico): descreve quais os dados estão
armazenados e seus relacionamentos. Neste nível, o
BD é descrito através de estruturas relativamente
simples, que podem envolver estruturas complexas no
nível físico.
• Visões do Usuário: é o nível externo, descrevendo
partes do BD que serão visualizadas pelos usuários de
acordo com suas necessidades. Uma visão é um
subconjunto de dados do BD, sem que exista a
necessidade de estarem armazenados no BD.
12. Modelos de SGBD
• Banco de Dados Relacionais
• Banco de Dados Hierárquicos
• Banco de Dados em Rede
• Banco de Dados Semânticos
• Banco de Dados Orientados a Objetos
• Banco de Dados Universais
• No curso estudaremos os do tipo “Relacionais” por
serem os mais usados atualmente no mercado
13. SGBD Hierárquicos
• Apresenta-se como uma árvore de cabeça para baixo
onde a raiz é o topo e desce abrindo os galhos em
níveis hierárquicos; Ex: Pastas do SO
• Tem a desvantagem de nem todos os problemas são
adaptáveis à estrutura hierárquica
14. SGBD em Rede
• Apresenta como características os dados
organizados em vários tipos de registros e tipos de
sets (estabelecem os relacionamentos) e um
problema de estratégia de acesso aos registros
“filhos”.
15. SGBD Relacional
• Baseado na teoria universal dos conjuntos. O BD é visualizado
como um conjunto de tabelas, cada uma representando uma
entidade ou um relacionamento.
• Os relacionamentos representados por valores de dados;
simetria nas consultas; várias linguagens definidas (álgebra
relacional, DDL e DML em SQL). É uma desvantagem do modelo
relacional a representação não natural de objetos complexos.
16. DDL e DML
• O esquema de um banco de dados é a estrutura geral
do BD. Sua estrutura não muda com freqüência e há
um esquema para cada nível de abstração e um
subesquema a cada visão do usuário. Um esquema
pode ser representado de uma forma textual ou
gráfica. Normalmente, utiliza-se o DER (Diagrama de
Entidade
• Relacionamento) para a representação gráfica do
esquema de um BD.
• Exemplo de esquema na forma textual:
Medico (Cod_med, Nnome_med, Especialidade)
Paciente (Cod_pac, Nome_pac)
Consulta (Cod_med, Cod_pac, Dia, Hora)
• Para definirmos os esquemas usamos as linguagens
do banco de dados para isso, que são: DDL e DML
17. DDL
• Data Definition LanguageI: Linguagem de
Definição de Dados, Permite especificar o
esquema do BD, através de um conjunto de
definições de dados.
• O esquema do BD fica armazenado numa área do
SGBD chamada de Dicionário de Dados. Na
maioria das vezes, uma DDL atua nos esquemas
conceitual e interno
18. DML
• Data Manipulation Language: Linguagem de
Manipulação de Dados, Permite:
recuperar, incluir, alterar e excluir dados no BD.
• O esquema do BD fica armazenado numa área do
SGBD chamada de Dicionário de Dados. Na
maioria das vezes, uma DDL atua nos esquemas
conceitual e interno
• Tanto a DDL quanto a DML estão contidas na
linguagem principal dos SGBD que é a SQL –
Structured Query Language = Linguagem
Estruturada para Consultas, com ela podemos
fazer uso da DDL e da DML ao mesmo tempo
19. Papeis Humanos no SGBD
20. Classificação dos SGBD
• Monousuário: somente um usuário acessa por vez
• Multiusuário: vários usuários podem ter acesso ao
mesmo tempo, na internet por exemplo
• Centralizado: os dados ficam em um único
servidor de banco de dados
• Distribuído: os dados ficam em diversos servidores
de banco de dados ligados em rede
21. Estrura Geral de um SGBD
22. Conceitos para BD Relacional
• Tabela: pode representar uma Entidade ou um
Relacionamento do diagrama DER da Análise
• Tupla: linha completa em uma tabela
• Atributo: uma coluna em uma tabela
• Domínio: conjunto de valores possíveis para um
determinado atributo, Ex: sexo=[Macho|Fêmea]
• Chave primária: atributo ou atributos de uma tabela
que identificam uma única linha da tabela
• Chave secundária: atributo ou atributos escolhidos
para dar uma ordem nas tuplas da tabela
• Chave estrangeira: atributo que liga uma tabela a
outra sendo chave primária na outra tabela
• Chave simples: formada por um único atributo
• Chave composta: formada por dois ou mais atributos

Banco dedados aula001

  • 1.
    Aula 001 Banco deDados PRONATEC Programa Nacional de Acesso ao Ensino Técnico e Emprego
  • 2.
    PRONATEC Programa Nacional deAcesso ao Ensino Técnico e Emprego
  • 3.
    1. BANCO DEDADOS • Dado: em informática é tudo que pode ser armazenado em dispositivos de memória. O dado é bruto e armazenado como é. Ex: Sexo • Informação: é o que podemos obter da interpretação dos dados. Ex: Mulheres cadastradas e menores de idade. • BD: É um conjunto de dados armazenados de forma lógica e correlacionados entre si e que podem ser incluídos, alterados, excluídos e consultados de forma a produzir informações
  • 4.
    2. GA –Gerenciados de Arquivos • É um tipo de Banco Dados mais antigo e básico, nele os dados ficam em arquivos e esses são relacionados entre si por meio de aplicativos escritos em diversas linguagens como: Delphi, Cobol, Java, Clipper, PHP • Alguns exemplos de bancos de dados GA são: Dbase, Clipper, FoxPro, Microsoft Access • Os GA não tem software internos para controle dos dados tais como consultar, incluir, alterar, excluir. Somente podemos fazer isso mediante linguagens de programação
  • 5.
    3. SGBS –Sistema Gerenciados de Banco de Dados • É o mais moderno e melhor sistema para controle de banco de dados disponível. • Exemplos de SGBD´s são: Firebird, MySQL, Oracle, Microsoft SQL Server, PostGre • Os SGBD´s tem como principal característica conter em si mesmos tanto os dados e relacionamentos quanto a parte de software responsável pela definição e manipulação desses. Ficando ainda encarregado da segurança de acesso aos dados
  • 6.
    4. GA xSGBD • Os SGBD apresentam as seguintes características principais. Caso alguma delas não esteja presente o candidato será um GA • 1) Auto-contenção: o SGBD obrigatoriamente tem em sim mesmos tanto dados, relacionamentos como aplicativos para manipular aqueles • 2) Independência dos dados: a mudança nos dados ou em seus esquemas não deve influir nos aplicativos que usam esses dados • 3) Abstração dos dados: o programador não precisa saber o modo de operação interna do SGBD, se precisar controlar uma duplicidade de dados na aplicação então não é um SGBD e sim um GA • 4) Visões: um SGBD deve permitir que visualizações de partes do banco de dados sejam possíveis sem ter que usar de artifícios de programação como cópias de tabelas • 5) Transações: todo SGBD deve permitir confirmar ou cancelar grupo de operações realizadas em bloco no banco sem a necessidade de intervenção do programador do aplicativo • 6) Acesso Automático: é a capacidade de evitar Dead-Lock • Para ser considerado um SGBD ele deve ter “todas” as características acima presentes ao mesmo tempo, caso contrário será um GA.
  • 7.
    5. Características OperacionaisSGBD • Características operacionais desejáveis dos SGBD: • 1) Controle de Redundância: redundância é a repetição do mesmo dado em locais diferentes que poderão ficar inconsistentes e devem ser evitadas, os SGBD têm em si recursos para isso. • 2) Controle de Acesso: o SGBD deve manter os dados protegidos e usar níveis de acesso com autoridades diferenciadas às informações • 3) Interfaceamento: o SGBD deve fornecer ferramentas para acesso aos dados de preferência de forma gráfica e por linguagem SQL • 4) Esquematização: Fornecer a compreensão dos dados e seus relacionamentos se possível de forma gráfica • 5) Controle de Integridade: os dados devem estar íntegros sempre, apesar de múltiplos acessos e concorrência a eles • 6) Backup: Apresentar facilidade de recuperação de falha
  • 8.
    6. Usando Bancode Dados - GA • Os Bancos de Dados do tipo Gerenciadores de Arquivos não podem ser desconsiderados uma vez que são úteis para pequenas aplicações de BD. • Apesar dos GA possuírem menos recursos que os SGBD eles são amplamente usados em softwares que necessitam de boa performance e aplicativos desktop ou para pequenas redes • Todo GA precisa das seguintes três definições: Tabelas, Estrutura das tabelas e Índices. • Tabela: de acordo com o projeto do BD são as Entidades e os Relacionamentos no DER da Análise de Sistemas • Estrutura das Tabelas: são as colunas de cada tabela, bem como os seus tipos, tamanhos e sua ordem • Índices: são arquivos que servem para ordenar os dados nas tabelas e auxiliar o programador na manutenção da integridade das mesmas pelo controle das chaves
  • 9.
    9. Componentes deum BD • Gerenciador de Acesso ao Disco: utiliza-se o próprio Sistema Operacional para acessar arquivos onde os dados e regras estão guardados • Compilador DDL: (Data Definition Language) linguagem de definição dos dados que processa as definições do esquema do banco de dados • Dicionário de Dados: Contem detalhes do esquema, as definições das tabelas, relacionamentos, índices, regras • Processador do BD: responsável por fazer as atualizações no BD: inclui, altera e exclui • Processador de Pesquisa: responsável por fazer as consultas aos dados do BD (comando select) • Compilador DML: (Data Manipulating Language) Linguagem de Manipulação de Dados. É a parte que processa os comandos para incluir, alterar, excluir, consultar e executar procedimentos e funções sobre os dados.
  • 10.
    10. Abstração deDados • Um SGBD deve prover uma “visão abstrata” dos seus dados para os usuários, isolando, desta forma detalhes internos da arquitetura do BD. • Existem três níveis de abstração: Nível de armazenamento(Físico), Nível do conjunto do usuário(Conceitual/Lógico) e Nível de visão do usuário • Objetivo: obter independência física e lógica dos dados. Física: pode-se mudar o esquema físico sem necessidade de alterar o esquema conceitual. Lógica: pode-se mudar o esquema conceitual sem a necessidade de modificar os programas externos que usam o BD
  • 11.
    11. Níveis deAbstração dos SGBD • Físico: também chamado de “Esquema interno”, é o nível mais baixo de abstração. Descreve como os dados estão realmente armazenados, englobando estruturas complexas de baixo nível. • Conceitual (Lógico): descreve quais os dados estão armazenados e seus relacionamentos. Neste nível, o BD é descrito através de estruturas relativamente simples, que podem envolver estruturas complexas no nível físico. • Visões do Usuário: é o nível externo, descrevendo partes do BD que serão visualizadas pelos usuários de acordo com suas necessidades. Uma visão é um subconjunto de dados do BD, sem que exista a necessidade de estarem armazenados no BD.
  • 12.
    12. Modelos deSGBD • Banco de Dados Relacionais • Banco de Dados Hierárquicos • Banco de Dados em Rede • Banco de Dados Semânticos • Banco de Dados Orientados a Objetos • Banco de Dados Universais • No curso estudaremos os do tipo “Relacionais” por serem os mais usados atualmente no mercado
  • 13.
    13. SGBD Hierárquicos •Apresenta-se como uma árvore de cabeça para baixo onde a raiz é o topo e desce abrindo os galhos em níveis hierárquicos; Ex: Pastas do SO • Tem a desvantagem de nem todos os problemas são adaptáveis à estrutura hierárquica
  • 14.
    14. SGBD emRede • Apresenta como características os dados organizados em vários tipos de registros e tipos de sets (estabelecem os relacionamentos) e um problema de estratégia de acesso aos registros “filhos”.
  • 15.
    15. SGBD Relacional •Baseado na teoria universal dos conjuntos. O BD é visualizado como um conjunto de tabelas, cada uma representando uma entidade ou um relacionamento. • Os relacionamentos representados por valores de dados; simetria nas consultas; várias linguagens definidas (álgebra relacional, DDL e DML em SQL). É uma desvantagem do modelo relacional a representação não natural de objetos complexos.
  • 16.
    16. DDL eDML • O esquema de um banco de dados é a estrutura geral do BD. Sua estrutura não muda com freqüência e há um esquema para cada nível de abstração e um subesquema a cada visão do usuário. Um esquema pode ser representado de uma forma textual ou gráfica. Normalmente, utiliza-se o DER (Diagrama de Entidade • Relacionamento) para a representação gráfica do esquema de um BD. • Exemplo de esquema na forma textual: Medico (Cod_med, Nnome_med, Especialidade) Paciente (Cod_pac, Nome_pac) Consulta (Cod_med, Cod_pac, Dia, Hora) • Para definirmos os esquemas usamos as linguagens do banco de dados para isso, que são: DDL e DML
  • 17.
    17. DDL • DataDefinition LanguageI: Linguagem de Definição de Dados, Permite especificar o esquema do BD, através de um conjunto de definições de dados. • O esquema do BD fica armazenado numa área do SGBD chamada de Dicionário de Dados. Na maioria das vezes, uma DDL atua nos esquemas conceitual e interno
  • 18.
    18. DML • DataManipulation Language: Linguagem de Manipulação de Dados, Permite: recuperar, incluir, alterar e excluir dados no BD. • O esquema do BD fica armazenado numa área do SGBD chamada de Dicionário de Dados. Na maioria das vezes, uma DDL atua nos esquemas conceitual e interno • Tanto a DDL quanto a DML estão contidas na linguagem principal dos SGBD que é a SQL – Structured Query Language = Linguagem Estruturada para Consultas, com ela podemos fazer uso da DDL e da DML ao mesmo tempo
  • 19.
  • 20.
    20. Classificação dosSGBD • Monousuário: somente um usuário acessa por vez • Multiusuário: vários usuários podem ter acesso ao mesmo tempo, na internet por exemplo • Centralizado: os dados ficam em um único servidor de banco de dados • Distribuído: os dados ficam em diversos servidores de banco de dados ligados em rede
  • 21.
  • 22.
    22. Conceitos paraBD Relacional • Tabela: pode representar uma Entidade ou um Relacionamento do diagrama DER da Análise • Tupla: linha completa em uma tabela • Atributo: uma coluna em uma tabela • Domínio: conjunto de valores possíveis para um determinado atributo, Ex: sexo=[Macho|Fêmea] • Chave primária: atributo ou atributos de uma tabela que identificam uma única linha da tabela • Chave secundária: atributo ou atributos escolhidos para dar uma ordem nas tuplas da tabela • Chave estrangeira: atributo que liga uma tabela a outra sendo chave primária na outra tabela • Chave simples: formada por um único atributo • Chave composta: formada por dois ou mais atributos