Campos, Ricardo. (2008). Apresentação de Bases de Dados. Access slides. Bases de Dados

Tamanho: px
Começar a partir da página:

Download "Campos, Ricardo. (2008). Apresentação de Bases de Dados. Access 2007. 260 slides. Bases de Dados"

Transcrição

1 Campos, Ricardo. (2008). Apresentação de. Access Ricardo Campos Autoria Esta apresentação foi desenvolvida por Ricardo Campos, docente do Instituto Politécnico de Tomar. Encontra-se disponível na página web do autor no link Publications ao abrigo da seguinte licença: Mais detalhes em: O seu uso, de parte ou da totalidade, pressupõe a utilização da seguinte referência: Campos, Ricardo. (2008). Apresentação de. Access A sua disponibilização em formato PPT pode ser feita mediante solicitação ( ricardo.campos@ipt.pt) 1

2 Campos, Ricardo. (2008). Apresentação de. Access Bibliografia Recursos: J.L.Pereira Tecnologia de FCA Editora de Informática D, Luis SQL Structured Query Language FCA Editora de Informática Bibliografia Recursos on-line ( e SQL): Tutoriais, Noções da Linguagem SQL, Linha de Código SQL, Nota: Não é possível garantir a existência futura dos endereços (URL s), citados nos recursos on-line. Como se sabe, os endereços são virtuais e a sua vida útil depende única e exclusivamente dos seus autores e proprietários. 2

3 Campos, Ricardo. (2008). Apresentação de. Access Sumário Objectivos Parte Teórica Parte Prática Programa Bibliografia Objectivos Programa Parte Teórica Parte Prática Objectivos Discussão dos conceitos relacionados com bases de dados; Diagrama de entidade-relação (modelo conceptual) para a representação do modelo de dados; às bases de dados relacionais (modelo lógico) e à normalização; Aprendizagem das cláusulas mais importantes da linguagem SQL, quer para a criação da estrutura da base de dados (DDL) quer para a exploração dos dados (DML); Noções fundamentais sobre transacções e optimização; Capacidade de espelhar os conhecimentos teóricos num projecto de desenho e construção de uma base de dados utilizando um SGBD relacional. 3

4 Campos, Ricardo. (2008). Apresentação de. Access Objectivos Programa Parte Teórica Parte Prática Objectivos Levantamento das necessidades de informação; Modelação de dados (diagramas E-R e normalização de dados); Implementação de uma base de dados em Microsoft Access 2007; Objectivos Programa Programa Conceitos de ; Níveis de Análise do Sistema de Informação; Ficheiros vs SGBDs; Tipos de. Modelo Relacional Modelo E-R (nível conceptual); Modelo Relacional (nível lógico); ; Estratégias para a Concepção de uma Base de Dados. 4

5 Campos, Ricardo. (2008). Apresentação de. Access Objectivos Programa Programa Desenho de um Esquema de Desenho de uma base de dados para uma biblioteca; Desenvolvimento de um esquema de BD em Access 2007 Criação de programas de aplicação com interfaces gráficas recorrendo ao Access 2007; Objectivos Programa Programa Álgebra Relacional Operações Binárias; Operações Unárias. Linguagem SQL Definição de SQL; Comandos DDL e Comandos DML; 5

6 Campos, Ricardo. (2008). Apresentação de. Access Objectivos Programa Programa Transacções e Recuperação Definição de Transacção; Definição de Recuperação e Tolerância a Falhas; Mecanismos de Recuperação; Tipos de Falhas; Conceitos de Bases de Dados Ricardo Campos (ricardo.campos@ipt.pt) 6

7 Campos, Ricardo. (2008). Apresentação de. Access Sumário Sumário Conceitos de ; Níveis de Análise do Sistema de Informação; Ficheiros vs SGBDs; Tipos de. Motivação Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Motivação Definição Aplicações Porque é que alguém que não quer ser profissional de sistemas de informação, deve aprender bases de dados? Pelo mesmo motivo pelo qual se devia aprender a usar um computador há 10 anos atrás; As bases de dados serão tão comuns no futuro como as folhas de cálculo; A criação de sistemas de informação é um processo que envolve pessoas de várias áreas. Ter conhecimentos em bases de dados, facilitará a comunicação com os profissionais de SI. 7

8 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de O que é uma Base de Dados? Motivação Definição Aplicações De uma forma genérica uma base de dados é uma estrutura que guarda dados: Uma agenda com moradas e contactos telefónicos; Uma lista de CDs; A World Wide Web. O objectivo de uma base de dados é possibilitar de uma forma rápida e automática o acesso aos seus dados: Procurar a morada de uma determinada pessoa; Procurar o nome da pessoa que canta determinada música; Procurar a página WWW do CET. Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Aplicações de Motivação Definição Aplicações Banca: todas as transacções e movimentos; Companhias áreas: reservas, horários; Universidades: inscrições, notas; Vendas: clientes, produtos, compras; Indústria: inventário, pedidos; Recursos Humanos: registo dos empregados, salários, impostos; Bibliotecas: registo de livros, revistas. 8

9 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Nível Conceptual, Lógico e Físico Nível Conceptual (Modelo E-R) Nível Lógico (Modelo Relacional) Nível Físico Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Gestão de Ficheiros vs SGBDs Sistema de Gestão de Ficheiros Sistema de Gestão de Para a organização dos dados existem 2 sistemas: Sistema de Gestão de Ficheiros Criados e mantidos pelas aplicações. Sistemas de Gestão de No qual se verifica uma certa independência entre as aplicações e os dados, sob a mediação do SGBD. S G B D Bases de Dados 9

10 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Definição de Sistema de Gestão de Ficheiros Uma das características principais dos Sistemas de Gestão de Ficheiros é que cada aplicação é responsável pela criação e gestão da estrutura interna da informação dos seus próprios ficheiros. Desta forma, qualquer alteração na estrutura de ficheiros implica uma alteração no código de cada uma das aplicações; Cada tipo de ficheiro possui a sua própria estrutura (docs como o Word e Excel têm estruturas diferentes) e é a aplicação que os cria que é responsável pela sua definição da estrutura interna desses ficheiros. Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Desvantagens do Sistema de Gestão de Ficheiros Redundância e Inconsistência dos dados Múltiplos formatos, duplicação da informação em ficheiros diferentes; No processamento tradicional de ficheiros (Sistema de Gestão de Ficheiros), cada aplicação mantém o seu próprio conjunto de ficheiros e dados, provocando a ocorrência de redundâncias; A redundância leva ao armazenamento excessivo de informações, ocupando espaço que poderia estar a ser utilizado com outras informações e dificulta a integridade da informação; Considere um sistema em que a informação relativa à morada dos clientes é registada em dois ficheiros diferentes. Se o cliente muda de morada e a mesma é apenas actualizada num dos ficheiros, o sistema passa a conter informação inconsistente; 10

11 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Desvantagens do Sistema de Gestão de Ficheiros Dificuldades no acesso aos dados Necessidade de escrever um novo programa para efectuar uma nova tarefa; Atomicidade das alterações Falhas podem colocar a base de dados num estado inconsistente, com alterações parciais já efectuadas. Explo: A operação de levantamento de dinheiro de uma conta deve ser totalmente realizada ou caso contrário nenhuma alteração deve ser efectuada. Acessos concorrentes por diversos utilizadores Acessos concorrente não controlados podem originar inconsistências. Explo: duas pessoas a consultarem um saldo e a alterarem-no ao mesmo tempo. Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Definição de Sistemas de Gestão de (SGBDs) A abordagem pelos SGBDs tem uma característica fundamental: os dados são organizados num único conjunto (uma única unidade de armazenamento em vez de várias unidades independentes); Adicionalmente todos os acessos aos dados passam por entidade designada por SGBD que centraliza em si o acesso à base de dados; Os SGBDs ocultam os detalhes físicos de armazenamento e organização dos dados (a base de dados encontra-se evidentemente num conjunto de ficheiros); O SGBD é uma única entidade que manipula a base de dados, atendendo a solicitações do nível aplicacional. S G B D Bases de Dados 11

12 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Características dos SGBDs Sistema de Gestão de Ficheiros Sistema de Gestão de Os SGBDs mantém não somente os dados, mas também a forma como os mesmos são armazenados, contendo uma descrição completa da base de dados; Essas informações são armazenadas no catálogo do SGBD (o dicionário de dados), o qual contém informações sobre a estrutura de cada ficheiro, o tipo, o formato, restrições, etc A informação armazenada no catálogo (no dicionário) é chamada de metadados; Assim, uma qualquer alteração na estrutura dos ficheiros, apenas implica uma alteração no catálogo, evitando a alteração no código fonte de cada uma das aplicações; Diferentes utilizadores poderão ter o seu acesso limitado a partes da base de dados. Por exemplo, embora todos os dados de uma organização estejam na mesma base de dados, aqueles que são importantes para a definição da estratégia só podem ser consultados pela administração. Vantagens dos SGBDs Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Acesso Simultâneo Vários utilizadores podem aceder e alterar ao mesmo tempo a mesma base de dados sem criar inconsistências. Explo: 2 utilizadores diferentes podem consultar simultaneamente os dados do mesmo cliente. No entanto o SGBD não permite que ambos os utilizadores alterem esses dados ao mesmo tempo. Controle de Redundância Ao contrário do tradicional sistema de gestão de ficheiros, onde cada aplicação deve manter o seu próprio conjunto de ficheiros e dados, os SGBDs não, situação que facilita o controle de redundância. Restrição a acessos não autorizados Um SGBD deve fornecer um sistema de autorização e segurança, o qual é utilizado pelo administrador da base de dados, para criar contas e especificar as restrições dessas contas. 12

13 Campos, Ricardo. (2008). Apresentação de. Access Vantagens dos SGBDs Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Independência dos dados relativamente às aplicações Assim, uma qualquer alteração na estrutura dos ficheiros, apenas implica uma alteração no catálogo, evitando a alteração no código fonte de cada uma das aplicações. Tolerância a Falhas Um SGBD deve fornecer recursos para recuperação de falhas, tanto de software como de hardware. Exemplos de SGBDs Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Oracle, Informix, SQL Server, etc São bastante fiáveis e com maiores capacidade que os do próximo exemplo. MySql, Access, Mais adequados para uso doméstico, pequenas empresas, etc Explo: 2 utilizadores diferentes podem consultar simultaneamente os dados do mesmo cliente. No entanto o SGBD não permite que ambos os utilizadores alterem esses dados ao mesmo tempo. 13

14 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Utilizadores de um SGBD Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Utilizadores Nível Básico Programadores de Aplicações Utilizadores Nível Avançado Administradores da Base de Dados usam escrevem usam usam Programas de Interface Programas Ferramentas de Análise Ferramentas de Administração Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Utilizadores de um SGBD Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Utilizadores Nível Básico Chamam uma das aplicações que foi construída previamente; Explo: pessoas a aceder a uma base de dados através da web. Programadores de Aplicações Interagem com o sistema através de chamadas DML; Utilizadores Nível Avançado Constroem pedidos numa linguagem de consulta de bases de dados ou através de ferramentas de OLAP ou Data Mining; Administrador da Base de Dados Coordena todas as actividades do sistema de bases de dados. 14

15 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de Funções do Administrador de Concede aos utilizadores autorizações de acesso à base de dados; Define os métodos de acesso; Define restrições de integridade; Monitoriza o desempenho; Manutenção de rotina (backups, gestão de espaço em disco). Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Arquitectura de um SGBD Tipos de Sistema de Gestão de Ficheiros Sistema de Gestão de utilizadores nível básico programadores de aplicações Utilizadores Utilizadores nível avançado DBA programas de interface chamadas de rotina consultas esquema de bases de dados pré-compilador da linguagem de manipulação de dados processador de consultas compilador da linguagem de definição de dados código objecto dos programas de interface gestor da base de dados SGBD gestor de ficheiros ficheiros de dados dicionário de dados 15

16 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Arquitectura Cliente/Servidor Sistema de Gestão de Ficheiros Sistema de Gestão de Servidor BD Servidor BD Servidor Rede Rede Aplicação Cliente Aplicação Cliente Aplicação Aplicação Arquitectura de três camadas Aplicações web recorrendo a software intermediário. Arquitectura de duas camadas Programas clientes que comunicam com a base de dados. Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Vantagens Arquitectura Cliente/Servidor Sistema de Gestão de Ficheiros Sistema de Gestão de Independência das aplicações de cliente relativamente à localização física dos dados; Todo o trabalho de interface com o utilizador e tratamento da informação (gráfico, formatação) é feito no cliente; Todas as tarefas de armazenamento da informação, consulta, segurança, partilha de dados, são concentradas no servidor; Só os pedidos de informação e os resultados é que são enviados pela rede, donde resulta um tráfego geralmente baixo; Adapta-se facilmente a problemas de diferentes dimensões: mais ou menos clientes, servidores com maior ou menor capacidade, mais ou menos servidores. 16

17 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Distribuídas Sistema de Gestão de Ficheiros Sistema de Gestão de Servidor Servidor BD Servidor 1 BD Servidor 2 Rede Cliente Cliente Uma base de dados distribuída surge ao utilizador como se fosse uma única base de dados, mas na realidade é constituída por diversas bases de dados distribuídas por diversos computadores. Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Contextualização Histórica Hierárquico Em Rede Relacional A utilização comercial de BDs começou nos anos 60. Inicialmente a informação era guardada em ficheiros e a sua consulta e manipulação era pouco prática; Para definição de dados eram usados os modelos hierárquico e de rede; No início dos anos 70 surgiram os SGBD relacionais cuja popularidade não tem parado de crescer até hoje; Este sucesso pode ser explicado pela simplicidade do modelo em que assentam, o modelo relacional, que é constituído somente por relações, e pelo surgimento de uma linguagem de manipulação simples e eficiente, o SQL (Structured Query Language). 17

18 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Hierárquico Em Rede Relacional Tipos: Hierárquicos, em Rede, Relacionais Hierárquicos; Em Rede; Relacional: Relações entre tabelas de dados controladas por álgebra relacional; Proposto por Codd em 1969; Actualmente existem vários fornecedores de tecnologia relacional no mercado: Oracle; MySql; SqlServer, Access, etc ; Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Hierárquico Em Rede Relacional Exemplo de Informações numa Base de Dados Consideremos a seguinte tabela como base para a definição dos vários tipos de bases de dados: Nome Rua Cidade Conta Saldo Nuno Terlamonte Aljezur 1 55 Filipa Sítio Fechado Aljezur Filipa Sítio Fechado Aljezur António Glorioso Lisboa António Glorioso Lisboa

19 Campos, Ricardo. (2008). Apresentação de. Access Modelo Hierárquico Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Hierárquico Em Rede Relacional Os dados são representados por registos e os relacionamentos por ligações; Os registos são organizados como colecções arbitrárias de árvores. Nuno Terlamonte Aljezur António Glorioso Lisboa Filipa Sítio Fechado Aljezur Modelo Hierárquico Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Hierárquico Em Rede Relacional Cliente Modelo Hierárquico Como se pode concluir, esta é uma organização que privilegia o acesso aos registos do Cliente, mas que dificulta o acesso aos registos do Produto. Encomenda Linha_Encomenda Produto 19

20 Campos, Ricardo. (2008). Apresentação de. Access Modelo em Rede Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Hierárquico Em Rede Relacional Os dados são representados por colecções de registos e os relacionamentos por ligações: Nuno Terlamonte Aljezur 1 55 Filipa Sítio Fechado Aljezur António Glorioso Lisboa Modelo Relacional Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Hierárquico Em Rede Relacional Tanto os dados, como os relacionamentos são representados por tabelas; Possui fundamento matemático sólido; Suponha-se a representação da realidade recorrendo ao modelo E-R (nível conceptual): rua cidade número saldo nome Cliente M possui N Conta : codcliente Nome Rua Cidade 100 Nuno Terlamonte Aljezur 101 Filipa Sítio Fechado Aljezur 102 António Glorioso Lisboa codcliente numconta numconta Saldo

21 Campos, Ricardo. (2008). Apresentação de. Access Níveis de Análise do Sistema de Informação Ficheiros vs SGBDs Tipos de Hierárquico Em Rede Relacional Grau e Cardinalidade de uma Relação Grau de uma Relação Número de atributos de uma relação. Cardinalidade de uma Relação Número de tuplos de uma relação 4 atributos Grau = 4 Cliente codcliente Nome Rua Cidade 100 Nuno Terlamonte Aljezur 101 Filipa Sítio Fechado Aljezur 102 António Glorioso Lisboa 3 tuplos Cardinalidade = 3 Modelo Relacional Ricardo Campos (ricardo.campos@ipt.pt) 21

22 Campos, Ricardo. (2008). Apresentação de. Access Sumário Sumário Modelo Relacional Modelo E-R (nível conceptual); Modelo Relacional (nível lógico); ; Estratégias para a Concepção de uma Base de Dados; Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Definição do Modelo E-R (Entidade Relação) Tipos de Participação O desenvolvimento de uma base de dados passa por representar graficamente a realidade que se quer moldar: O Diagrama de Entidade Relação é uma técnica de representação gráfica que ilustra conceptualmente as relações entre entidades de bases de dados; Autor M N obra Publicação 22

23 Campos, Ricardo. (2008). Apresentação de. Access Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Definição do Modelo E-R (Entidade Relação) Tipos de Participação No Access o modelo conceptual não existe. Assim, sempre que se pretende construir uma base de dados, o desenvolvimento da parte conceptual realizase numa folha de papel ; Uma vez que o Access apenas conhece o modelo lógico, é necessário aprender os fundamentos teóricos da passagem do modelo conceptual para o modelo lógico, por forma que seja possível construir as tabelas no Access; Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Entidade, Atributos, Associações e Chaves Tipos de Participação Entidade kms Cor Objecto que é distinguível de outros objectos, mas que pode ser agrupado na mesma entidade, pois possuem várias características comuns. Pretende representar a realidade que queremos modelar (exemplo: empresa, empregado, aluno, professor, carro). kms Cor 23

24 Campos, Ricardo. (2008). Apresentação de. Access Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Entidade, Atributos, Associações e Chaves Tipos de Participação Dê um exemplo de entidades: Aluno Disciplina Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Entidade, Atributos, Associações e Chaves Tipos de Participação Atributos Propriedades ou características que permitem descrever as entidades. Os livros por exemplo possuem vários atributos comuns: o título, o número de páginas, o ano de publicação, etc Titulo Número de Páginas Ano de Publicação 24

25 Campos, Ricardo. (2008). Apresentação de. Access Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Entidade, Atributos, Associações e Chaves Tipos de Participação Dê um exemplo de atributos: n.º aluno nome código Designação morada Aluno Disciplina Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Entidade, Atributos, Associações e Chaves Tipos de Participação Associação / Relação Estabelecimento de uma relação entre várias entidades; Chave sublinhado Um atributo (chave simples) ou grupo de atributos (chave combinada) que permite identificar univocamente cada entidade; Resumo: A presença de um substantivo usualmente indica uma entidade; A presença de um verbo é uma forte indicação de um relacionamento; Um adjectivo que é uma qualidade é uma forte indicação de um atributo; 25

26 Campos, Ricardo. (2008). Apresentação de. Access Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Entidade, Atributos, Associações e Chaves Tipos de Participação Dê um exemplo de associação: n.º aluno nome código Designação morada Aluno inscrito Disciplina Chaves Primárias Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Todas as tabelas têm de possuir uma chave primária; Permitem identificar univocamente um registo; Número é chave porque não podem existir dois clientes com o mesmo número; Nome não é chave porque podem existir dois clientes com o mesmo nome; Número Nome Morada 001 João Rua a 013 João Rua b 26

27 Campos, Ricardo. (2008). Apresentação de. Access Chaves Primárias Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Fila Lugar Ocupado? Apenas os atributos {Fila,Lugar} garante que identificamos um registo; A 1 sim A 2 não B 1 não Número Nome Morada BI 001 João NULL Ana NULL Número e BI são chaves candidatas. É obrigatório optar por uma única chave; Chaves Primárias Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Dê exemplos de registos para as seguintes entidades, não se esquecendo de indicar a chave primária: Aluno (naluno, nome, morada) (8699, Ricardo, Rua A) (8700, Nuno, Rua José) (8701, Ana, Travessa do Viriato) registo / linha / ocorrência / instância Disciplina (coddisciplina, desdisciplina) (1, TIC) (2, Informática) registo / linha / ocorrência / instância 27

28 Campos, Ricardo. (2008). Apresentação de. Access Chaves Estrangeiras Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação As chaves estrangeiras são conjuntos de uma ou mais colunas que, numa determinada tabela, referenciam a chave primária de outra tabela. As chaves estrangeiras constituem um mecanismo essencial de funcionamento dos sistemas de bases de dados relacionais; Aluno (numaluno, nome, morada, ) Disciplina (coddisciplina, designação, ) Exame (numaluno, coddisciplina, data, nota, ) Verifica-se que a tabela Exame possui duas chaves estrangeiras; Chaves Estrangeiras Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Importa chamar a atenção para o facto de não ser obrigatório que uma chave externa faça parte da chave primária da tabela em que está inserida. Empregado (codempregado, nome, coddepartamento, ) Departamento (coddepartamento, designação, ) 28

29 Campos, Ricardo. (2008). Apresentação de. Access Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Integridade de Entidade e Integridade Referencial Tipos de Participação Integridade de Entidade Nenhum componente de chave primária de uma tabela pode conter nulos. Integridade Referencial O valor da chave estrangeira tem de existir na tabela referenciada. Por outras palavras, não pode ser usada como chave estrangeira um valor que não exista como chave na sua tabela de origem Tabela Jogadores IdJogador Nome DataNasc J1 Vaz 08/10/1970 J2 Inácio 20/08/1972 J3 Paulo 20/01/1977 J4 Pinho 15/02/ Tabela Participações IdJogador IdJogo Golos J1 1 1 J2 2 0 J3 3 2 J A inscrição do valor J152 na tabela Participações, constituiria uma violação do princípio de integridade referencial, uma vez que este valor não existe na tabela jogadores. Exercício Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Do seguinte texto determine o que é Entidade, Associação, Atributos e Chave: Numa universidade existem alunos e professores. Os alunos são identificados por um número, têm um nome e morada. Os professores são identificados por um código, têm um nome e habilitações. Os professores leccionam aula aos alunos. Defina o modelo E-R (nível conceptual): n.º aluno nome código nome morada Aluno leccionar Professor habilitações 29

30 Campos, Ricardo. (2008). Apresentação de. Access Tipos de relações existentes Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Com base nestes três tipos de relações é possível decompor qualquer relação do mundo real: Relação Unária (reflexiva) Possui apenas uma entidade que se relaciona com ela própria; Relação Binária (as mais comuns) Possui duas entidades que são relacionadas entre si; Relação Ternária (complexas) Possui três entidades que se relacionam entre si; Tipos de relações existentes Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Relação Unária (reflexiva) Possui apenas uma entidade que se relaciona com ela própria; Selecção Esquema de uma relação unária, entre elementos da entidade selecção; jogos Selecção jogos Portugal x Espanha Portugal x França Alemanha x França 30

31 Campos, Ricardo. (2008). Apresentação de. Access Tipos de relações existentes Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Relação Binária (as mais comuns) Possui duas entidades que são relacionadas entre si; Deputados pertencem Grupos Parlamentares Tipos de relações existentes Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Relação Ternária (complexas) Possui três entidades que se relacionam entre si; Actores Filmes Director 31

32 Campos, Ricardo. (2008). Apresentação de. Access Tipos de Associações Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Numa associação binária podemos encontrar 3 tipos de associações: Um para Um (1:1) Caso em que a um elemento corresponde um outro elemento; Um para Muitos (1:N) Caso em que a um elemento podem corresponder um ou mais elementos; Muitos para Muitos (M:N) Caso em que vários elementos podem ser origem de vários outros elementos; 2 Tipos de Participação Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Tipos de Participação Uma entidade pode participar numa relação de duas formas: Participação Obrigatória Não pode existir nenhuma ocorrência dessa entidade que não esteja associada a alguma ocorrência da outra entidade que participa na relação; A B Entidade Obrigatória Entidade Obrigatória Participação Não Obrigatória Podem existir ocorrências dessa entidade que não estejam relacionadas a alguma ocorrência da outra entidade que participa na relação; 32

33 Campos, Ricardo. (2008). Apresentação de. Access Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Associação 1:1 nenhuma Entidade Obrigatória Tipos de Participação Dê um exemplo para cada um dos seguintes elementos: Um para Um (1:1) Homem 1 1 Casamento Mulher Um Homem está casado com uma Mulher Uma Mulher está casada com um Homem H M H1 M1 H2 M2 H3 M3 Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Associação 1:1 uma Entidade Obrigatória Tipos de Participação Outro Exemplo de Um para Um (1:1) Empregado 1 1 Tem Carro Um Carro pertence obrigatoriamente a um Empregado Mas nem todo o Empregado tem um Carro E E1 C C1 E2 C2 E3 E4 C3 33

34 Campos, Ricardo. (2008). Apresentação de. Access Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Associação 1:1 as duas Entidades Obrigatórias Tipos de Participação Outro Exemplo de Um para Um (1:1) Empregado 1 1 Tem Carro Um Empregado tem obrigatoriamente um Carro Um Carro pertence obrigatoriamente a um Empregado E C E1 C1 E2 C2 E3 C3 Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Associação 1:N nenhuma Entidade Obrigatória Tipos de Participação Um para Muitos (1:N) Enfermaria 1 N Tem Paciente Uma Enfermaria têm vários Pacientes Um Paciente pertence a uma só Enfermaria E P E1 P1 P2 E2 P3 34

35 Campos, Ricardo. (2008). Apresentação de. Access Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Associação 1:N Entidade do lado N Obrigatória Tipos de Participação Um para Muitos (1:N) Empresa 1 N Trabalhar Empregado Uma Empresa têm vários Empregados a trabalhar Um Empregado trabalha obrigatoriamente numa Empresa A B A1 B1 B2 A2 B3 Representação Gráfica Conceito de Chaves Tipos de Relações Existentes Tipos de Associações Associação M:N nenhuma Entidade Obrigatória Tipos de Participação Muitos para Muitos (M:N) Autor M Escreveu Pertence N Livro Um Autor escreveu vários Livros Um Livro pertence a vários Autores A L A1 L1 A2 L2 A3 L3 35

36 Campos, Ricardo. (2008). Apresentação de. Access Contextualização Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional De acordo com os tipos de associações e os tipos de participação: Autor M N obra Publicação é possível definir o modelo relacional (nível lógico); É no entanto necessário aprender os fundamentos teóricos da passagem do modelo E-R (nível conceptual) para o modelo relacional (nível lógico), por forma que seja possível definir as tabelas: Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Relação 1:1 nenhuma Entidade Obrigatória Dê um exemplo para cada um dos seguintes elementos: Um para Um (1:1) Homem 1 1 Casamento Mulher Um Homem está casado com uma Mulher Uma Mulher está casada com um Homem H M H1 M1 H2 M2 H3 M3 36

37 Campos, Ricardo. (2008). Apresentação de. Access Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Relação 1:1 nenhuma Entidade Obrigatória Homem (BIHomem, nome, morada, ) Mulher (BIMulher, nome, morada, ) Se no relacionamento 1:1 nenhuma entidade é obrigatória são necessárias 3 tabelas (2 para as entidades + 1 para a associação): Homem (BIHomem, nome, morada, ) Mulher (BIMulher, nome, morada, ) Transf. Modelo E-R para modelo relacional Quando se transforma um modelo conceptual (E-R) para um modelo lógico (relacional), é necessário realizar um conjunto de alterações. A transformação passa por criar uma nova tabela, onde a chave, é a chave primária de uma das entidades (por exemplo Homem). Deve-se também adicionar como atributo a chave da outra entidade (Mulher): Casamento (BIHomem, BIMulher, ) Relação 1:1 uma Entidade Obrigatória Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Outro Exemplo de Um para Um (1:1) Empregado 1 1 Tem Carro Um Carro pertence obrigatoriamente a um Empregado Mas nem todo o Empregado tem um Carro E E1 C C1 E2 C2 E3 E4 C3 37

38 Campos, Ricardo. (2008). Apresentação de. Access Relação 1:1 uma Entidade Obrigatória Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Empregado (codempregado, nome, morada, ) Carro (Matricula, marca, modelo, ) Se o relacionamento de 1:1 tem participação obrigatória de apenas uma entidade são necessárias 2 tabelas: A transformação passa por colocar o atributo que é chave primária da relação Empregado (entidade não obrigatória) na relação Carro (entidade obrigatória) : Empregado (codempregado, nome, morada, ) Carro (Matricula, marca, modelo, codempregado, ) Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Relação 1:1 as duas Entidades Obrigatórias Outro Exemplo de Um para Um (1:1) Empregado 1 1 Tem Carro Um Empregado tem obrigatoriamente um Carro Um Carro pertence obrigatoriamente a um Empregado E C E1 C1 E2 C2 E3 C3 38

39 Campos, Ricardo. (2008). Apresentação de. Access Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Relação 1:1 as duas Entidades Obrigatórias Empregado (codempregado, nome, morada, ) Carro (Matricula, marca, modelo, ) Se o relacionamento de 1:1 tem participação obrigatória de ambas as entidades é necessária apenas 1 única tabela: A transformação passa por colocar o atributo que é chave primária de uma das entidades (por exemplo de Carro) na outra entidade (por exemplo em Empregado): Empregado (codempregado, nome, morada, Matricula, marca, modelo, ) Os atributos do Carro podem ser vistos como atributos adicionais do Empregado Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Relação 1:N nenhuma Entidade Obrigatória Um para Muitos (1:N) Enfermaria 1 N Tem Paciente Uma Enfermaria têm vários Pacientes Um Paciente pertence a uma só Enfermaria E P E1 P1 P2 E2 P3 39

40 Campos, Ricardo. (2008). Apresentação de. Access Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Relação 1:N nenhuma Entidade Obrigatória Enfermaria (codenfermaria, designação, ) Paciente (codpaciente, nome, morada, ) Se no relacionamento 1:N a entidade do lado N não é obrigatória, são necessárias 3 tabelas (2 para as entidades + 1 para a associação): Enfermaria (codenfermaria, designação, ) Paciente (codpaciente, nome, morada, ) A transformação passa por criar uma nova tabela, onde a chave, é a chave primária da entidade Paciente (lado N da associação). Deve-se também adicionar como atributo a chave da entidade Enfermaria (lado 1 da associação): Enfermaria_Paciente (codpaciente, codenfermaria, ) Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Relação 1:N Entidade do lado N Obrigatória Um para Muitos (1:N) Empresa 1 N Trabalhar Empregado Uma Empresa têm vários Empregados a trabalhar Um Empregado trabalha obrigatoriamente numa Empresa A B A1 B1 B2 A2 B3 40

41 Campos, Ricardo. (2008). Apresentação de. Access Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Relação 1:N Entidade do lado N Obrigatória Empresa (codempresa, nome, localização, ) Empregado (BI, nome, morada, ) Se no relacionamento 1:N a entidade do lado N é obrigatória, são necessárias duas tabelas: A transformação passa por colocar o atributo que é chave primária da relação Empresa (lado 1 da associação) na relação Empregado (lado N da associação): Empresa (codempresa, nome, localização, ) Empregado (BI, nome, morada, codempresa, ) Relação M:N Obrigatoriedade Irrelevante Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Muitos para Muitos (M:N) Autor M Escreveu Pertence N Livro Um Autor escreveu vários Livros Um Livro pertence a vários Autores A L A1 L1 A2 L2 A3 L3 41

42 Campos, Ricardo. (2008). Apresentação de. Access Relação M:N Obrigatoriedade Irrelevante Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Autor (codautor, nome, ) Livro (ISBN, Título, numpag, ) Nas relações M:N são sempre necessárias 3 tabelas, uma para cada entidade e uma terceira para a associação: Autor (codautor, nome, ) Livro (ISBN, Título, numpag, ) A transformação passa por criar uma nova tabela, onde a chave, é a chave é constituída pela chave de cada um das entidades (chave de Autor + chave de Livro): Autor_Livro (codautor, ISBN, datalançamento, ) Resumo Uma associação dá origem a uma tabela quando: Quando é uma associação 1:N (com entidade do lado N não obrigatória); Quando é uma associação 1:1 (com ambas as entidades não obrigatórias); Quando é uma associação M:N. Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional A existência de uma chave estrangeira (atributo que é chave primária noutra relação) numa relação, prende-se com a necessidade de manter a interligação entre essa relação e a relação onde esse conjunto de atributos é chave primária; Por exemplo dadas duas relações, Departamentos e Funcionários, a única forma de traduzir que um dado funcionário trabalha num dado departamento é incluir na relação Funcionários a identificação do Departamento onde esse Funcionário trabalha; 42

43 Campos, Ricardo. (2008). Apresentação de. Access Exercício Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Defina com base no seguinte levantamento de requisitos o modelo de E-R: Um Editor pode editar vários Livros; Um Livro obrigatoriamente só pode ser editado por um Editor; Um Livro pode ser requisitado por vários Utentes; Um Utente pode requisitar vários Livros; Editor 1 N Edição Livro M Requisição N Utente Exercício Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Transformar o modelo E-R (nível conceptual) no modelo relacional (nível lógico): 4 tabelas (3 entidades + 1 associação) Editor (codeditor, nome, ) Livro (ISBN, título, codeditor ) Requisição (ISBN, codleitor, datarequisição, ) Utente (codleitor, nome, ) Editor codeditor nome.. 1 N Livro ISBN título codeditor 1 N Requisição ISBN codleitor datareq. N 1 Utente codleitor nome

44 Campos, Ricardo. (2008). Apresentação de. Access Exercício Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Pretende-se desenvolver uma base de dados para um banco: Cada cliente pode ter várias contas, mas cada conta só tem associado um cliente; Cada conta está fixada numa agência, a qual pode ter várias contas; Cada cliente pode fazer vários empréstimos, mas cada empréstimo só está associado a um cliente; Cada empréstimo está fixado numa agência, a qual pode ter vários empréstimos concedidos; Modelo E-R (nível conceptual) Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Modelo de E-R: Cliente 1 N Conta N 1 1 N Empréstimo N Agência 1 Modelo de E-R constituído pelo clientes de um banco, assim como as contas e empréstimos desses clientes nas várias agências do banco. 44

45 Campos, Ricardo. (2008). Apresentação de. Access DDL e DML Modelo Relacional (nível lógico) Transformação do modelo E-R (ass. 1:1) para modelo Relacional Transformação do modelo E-R (ass. 1:N) para modelo Relacional Transformação do modelo E-R (ass. M:N) para modelo Relacional Modelo Relacional: Clientes(codCliente, nome, profissao, localidade); Agencias(codAgencia, designacao, localidade); Contas(numConta, tipoconta, codcliente, codagencia, saldo); Emprestimos(numEmprestimo, codcliente, codagencia, valor); Clientes codclient e nome Profissao localidade 1 N N Contas numconta tipoconta codcliente codagencia N saldo Emprestimos numemprestimo codcliente codagencia valor N 1 1 Agencia codagencia designacao localidade Objectivos da Normalização Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Normalizar para quê? Após o desenvolvimento do modelo E-R dos dados (nível conceptual) é feito o desenvolvimento do modelo relacional (nível lógico); O conjunto de tabelas obtidas representa a estrutura da informação; Assegurar o mínimo de redundância possível; 45

46 Campos, Ricardo. (2008). Apresentação de. Access Limitações das monotabelas Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Para registar numa única tabela as encomendas efectuadas pelos clientes, caímos numa redundância desnecessária de informação, quer em relação aos produtos, quer em relação aos clientes; Cliente Endereço Telefone Produto Modelo Preço Data Qtd Silva Lisboa Alicate A /03/ Santos Porto Martelo M /03/ Costa Coimbra Serra S /03/ Castro Faro Tesoura T /03/ Silva Lisboa Martelo M /04/ Silva Lisboa Tesoura T /04/ Costa Coimbra Alicate A /04/ Costa Coimbra Serra S /04/ Castro Faro Alicate A /04/ Limitações das monotabelas Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Outros problemas das monotabelas: Problemas de Actualização Se o endereço do cliente for alterado, essa alteração tem de ser feita em várias linhas da tabela; Problemas de Inserção Não é possível registar informação relativa a um cliente que não tenha feito qualquer encomenda; Problemas de Eliminação Imagine-se que o cliente ainda só fez uma encomenda. Se a encomenda for anulada, perde-se toda a informação relativa ao cliente; 46

47 Campos, Ricardo. (2008). Apresentação de. Access Objectivos da Normalização Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Modificar o conjunto de tabelas obtido do modelo conceptual num outro conjunto de tabelas equivalente, mas menos redundante e mais estável; A existência de redundâncias está associada a um conjunto de anomalias de inserção de dados, anomalias de eliminação de dados e anomalias de alteração de dados. As 3 formas normais Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica 1.ª Forma Normal Uma tabela, está na 1FN quando todos os seus atributos são elementares. Não pode existir um conjunto de valores para um determinado atributo; 2.ª Forma Normal Quando a chave é composta, qualquer atributo que não seja chave deve depender da totalidade da chave, através de uma dependência funcional elementar; 3.ª Forma Normal Nenhum atributo não chave pode depender de um outro atributo não chave, ou seja, cada atributo deve depender apenas da chave primária da relação; 47

48 Campos, Ricardo. (2008). Apresentação de. Access Esquema Geral da Normalização Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica 1.ª Forma Normal Dados não normalizados. Dispor a informação em tabelas de forma que todas as ocorrências dos atributos sejam elementares: Os dados estão na 1.ª Forma Normal Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Esquema Geral da Normalização 2.ª Forma Normal Identificar as dependências funcionais dos atributos em relação às chaves: Os dados estão na 2.ª Forma Normal 48

49 Campos, Ricardo. (2008). Apresentação de. Access Esquema Geral da Normalização Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica 3.ª Forma Normal Identificar as dependências transitivas. Desdobrar a relação de forma que cada atributo depende única e exclusivamente da chave: Os dados estão na 3.ª Forma Normal Contextualização Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Numa escola pretende-se manter informação sobre: - Os alunos da escola (com informação sobre o seu número, nome, morada); - As disciplinas que são ministradas na escola (nome); - Os professores que dão essas disciplinas (nome); - As notas dos alunos nas disciplinas que frequentam; 49

50 Campos, Ricardo. (2008). Apresentação de. Access Contextualização Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Actualmente já existe uma base de dados que guarda toda a informação numa tabela: idaluno Nome Morada Disciplinas Professor Nota A1 João Lisboa Matemática, Economia, Direito Prof. Carlos, Prof Paulo, Prof José 14, 19, 9 A2 Ana Algés Matemática, Física Prof. Carlos, Prof.ª Ana 11, 4 A3 Pedro Sintra Matemática, Economia, Física Prof. Carlos, Prof Paulo, Prof.ª Ana 8, 12, 15 A4 Filipa Lisboa Matemática Prof. Carlos, 14 1.ª Forma Normal O passo seguinte é converter os atributos não atómicos, de forma que não seja possível incluir mais do que um valor em cada campo de uma tabela: 1FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Definição Uma tabela, está na 1FN quando todos os seus atributos são elementares. Não pode existir um conjunto de valores para um determinado atributo; Atributos Elementares Conjunto de elementos indivisíveis (exemplo: Data de Nascimento, Peso, etc ) Conjunto de Atributos Uma lista de valores para um dado atributo 50

51 Campos, Ricardo. (2008). Apresentação de. Access FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Tabela na 1.ª Forma Normal: Chave idaluno Nome Morada iddisciplina Disciplina idprofessor Professor Nota A1 João Lisboa 1 Matemática 1 Prof. Carlos 14 A1 João Lisboa 2 Economia 2 Prof. Paulo 19 A1 João Lisboa 3 Direito 3 Prof. José 9 A2 Ana Algés 1 Matemática 1 Prof. Carlos 11 A2 Ana Algés 4 Física 4 Prof.ª Ana 4 A3 Pedro Sintra 1 Matemática 1 Prof. Carlos 8 A3 Pedro Sintra 2 Economia 2 Prof. Paulo 12 A3 Pedro Sintra 4 Física 4 Prof.ª Ana 15 A4 Filipa Lisboa 1 Matemática 1 Prof. Carlos 14 Alunos (idaluno, Nome, Morada, iddisciplina, Disciplina, idprofessor, Professor, nota) 2FN Definição Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Quando a chave é composta, qualquer atributo que não seja chave deve depender da totalidade da chave, através de uma dependência funcional elementar; Dependências Funcionais (X Y) X e Y são listas de atributos; Se uma instância de valores do atributo X determina univocamente uma instância de Y (X determina Y). Ou seja, diz-se que X determina Y, se para cada valor de X existe um só valor de Y Ou seja, se soubermos X, sabemos automaticamente Y 51

52 Campos, Ricardo. (2008). Apresentação de. Access FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Exemplo de dependência funcional (X Z) Tome-se como referência a tabela A (x,y,z,w): x y z w X Z; Para um dado valor do atributo X, o valor do atributo Z é sempre o mesmo; Conhecido o valor de X sabe-se automaticamente o valor de Z; Sempre que o valor da coluna X é 1, o valor do atributo Z é 2; Se estas regras se verificarem sempre, e não apenas para um conjunto concreto de valores (num dado momento), então existe uma dependência funcional; 2FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Exemplo de dependência funcional elementar {X,Y} W Tome-se como referência a tabela A (x,y,z,w): x y z w {X,Y} W; W é funcionalmente dependente do conjunto de atributos {X,Y}, quando estes atributos são tomados como um conjunto; Convém, notar que o atributo W não é funcionalmente dependente de nenhum dos atributos X e Y, quando estes são tomados isoladamente (por exemplo x(1) w(7), mas x(1) w(4), logo não é funcionalmente dependente); W é irredutivelmente dependente de {X,Y}, como um todo e não depende de nenhum dos seus subconjuntos tomados isoladamente; 52

53 Campos, Ricardo. (2008). Apresentação de. Access FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica idaluno Nome Morada iddisciplina Disciplina idprofessor Professor Nota A1 João Lisboa 1 Matemática 1 Prof. Carlos 14 A1 João Lisboa 2 Economia 2 Prof. Paulo 19 A1 João Lisboa 3 Direito 3 Prof. José 9 A2 Ana Algés 1 Matemática 1 Prof. Carlos 11 A2 Ana Algés 4 Física 4 Prof.ª Ana 4 A3 Pedro Sintra 1 Matemática 1 Prof. Carlos 8 A3 Pedro Sintra 2 Economia 2 Prof. Paulo 12 A3 Pedro Sintra 4 Física 4 Prof.ª Ana 15 A4 Filipa Lisboa 1 Matemática 1 Prof. Carlos 14 2FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Tabelas na 2.ª Forma Normal: Chave Chave Chave idaluno Nome Morada idaluno iddisciplina Nota iddisciplina Disciplina idprofessor Professor A1 João Lisboa A Matemática 1 Prof. Carlos A2 Ana Algés A Economia 2 Prof. Paulo A3 Pedro Sintra A Direito 3 Prof. José A4 Filipa Lisboa A Física 4 Prof.ª Ana A2 4 4 A3 1 8 A A A

54 Campos, Ricardo. (2008). Apresentação de. Access FN Definição Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Nenhum atributo não chave pode depender de um outro atributo não chave, ou seja, cada atributo deve depender apenas da chave primária da relação; iddisciplina Disciplina idprofessor Professor 1 Matemática 1 Prof. Carlos 2 Economia 2 Prof. Paulo 3 Direito 3 Prof. José 4 Física 4 Prof.ª Ana 3FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Tabelas na 3.ª Forma Normal: Chave Chave iddisciplina Disciplina idprofessor idprofessor Professor 1 Matemática 1 2 Economia 2 3 Direito 3 4 Física 4 1 Prof. Carlos 2 Prof. Paulo 3 Prof. José 4 Prof.ª Ana 54

55 Campos, Ricardo. (2008). Apresentação de. Access Resumo Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Desta forma obtemos as seguintes tabelas normalizadas (3FN): Aluno (idaluno, nome, morada); Nota (idaluno, iddisciplina, nota); Disciplina (iddisciplina, disciplina, idprofessor); Professor (idprofessor, Professor); Reflexo do modelo lógico de dados (modelo relacional): Aluno idaluno nome.. 1 N Nota idaluno iddisciplina nota N 1 Disciplina iddisciplina disciplina idprofessor N 1 Professor idprofessor Professor.... Contextualização Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Pretende-se automatizar o registo de compras num hipermercado: - Os clientes fazem encomendas - As encomendas contêm produtos 55

56 Campos, Ricardo. (2008). Apresentação de. Access FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Definição Uma tabela, está na 1FN quando todos os seus atributos são elementares. Não pode existir um conjunto de valores para um determinado atributo; Actualmente já existe uma base de dados que guarda toda a informação numa tabela: Nº encomenda Nº cliente Cliente Endereço Cliente DataEnc codproduto Produto Qtd 12 2 João Rua A , 2, 3 A, B, C 12, 10, Ana Rua B , 3 A, C 16, 18 1.ª Forma Normal 1FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica O passo seguinte é converter os atributos não atómicos, de forma que não seja possível incluir mais do que um valor em cada campo de uma tabela: Tabela na 1.ª Forma Normal: Chave Nº encomenda Nº cliente Cliente Endereço Cliente DataEnc codproduto Produto Qtd 12 2 João Rua A A João Rua A B João Rua A C Ana Rua B A Ana Rua B C 18 Encomenda (numencomenda, numcliente, Cliente, endcliente, dataenc, codproduto, Produto, Qtd) 56

57 Campos, Ricardo. (2008). Apresentação de. Access FN Definição Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Quando a chave é composta, qualquer atributo que não seja chave deve depender da totalidade da chave, através de uma dependência funcional elementar; Nº encomenda Nº cliente Cliente Endereço Cliente DataEnc codproduto Produto Qtd 12 2 João Rua A A João Rua A B João Rua A C Ana Rua B A Ana Rua B C 18 2FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Chave Nº encomenda Nº cliente Cliente Endereço Cliente DataEnc 12 2 João Rua A Ana Rua B Encomenda (numencomenda, numcliente, Cliente, endcliente, dataenc) Chave Chave Nº encomenda codproduto Qtd Linha_Encomenda (numencomenda, codproduto, Qtd) codproduto Produto 1 A 2 B 3 C Produto (codproduto, Produto) 57

58 Campos, Ricardo. (2008). Apresentação de. Access FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Definição Nenhum atributo não chave pode depender de um outro atributo não chave, ou seja, cada atributo deve depender apenas da chave primária da relação; A única relação que pode não estar na 3FN é a Encomendas dado que é a única que possui mais do que um atributo não-chave; Chave Chave Nº encomenda Nº cliente Cliente Endereço Cliente DataEnc 12 2 João Rua A Ana Rua B Encomenda Nº encomenda codproduto Qtd Linha_Encomenda Chave codproduto Produto 1 A 2 B 3 C Produto 3FN Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Nº encomenda Nº cliente Cliente Endereço Cliente DataEnc 12 2 João Rua A Ana Rua B A existência desta última dependência, está em claro desacordo com a definição da 3FN. A solução passa por decompor a relação, de acordo com as dependências, nas duas relações seguintes: Chave Nº encomenda Nº cliente DataEnc Encomenda (numencomenda, numcliente, dataenc) Chave Nº cliente Cliente Endereço Cliente 2 João Rua A 3 Ana Rua B Cliente (numcliente, Cliente, endcliente) 58

59 Campos, Ricardo. (2008). Apresentação de. Access Resumo Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Modelo E-R (nível conceptual) Nº encomenda Nº cliente Cliente Endereço Cliente DataEnc codproduto Produto Qtd 12 2 João Rua A A João Rua A B João Rua A C Ana Rua B A Ana Rua B C 18 Para registar numa única tabela as encomendas registadas pelos clientes, caímos numa redundância desnecessária. A solução mais adequada passa pela definição de várias tabelas: Produto M Linha_Encom Tem endas N Encomendas N Pertence 1 Cliente Resumo Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Produto M Linha_Encom Tem endas N Encomendas N Pertence 1 Cliente Modelo Relacional (nível lógico) Chave codproduto Produto 1 A 2 B 3 C Produto Chave Nº encomenda codproduto Qtd Linha_Encomenda Chave Nº encomenda Nº cliente DataEnc Encomenda Chave Nº cliente Cliente Endereço Cliente 2 João Rua A 3 Ana Rua B Cliente 59

60 Campos, Ricardo. (2008). Apresentação de. Access Resumo Objectivos 1FN, 2FN, 3FN Projecto Normalização de Escola Projecto Normalização de Factura Electrónica Desta forma obtemos as seguintes tabelas normalizadas (3FN): Produto (codproduto, Produto) Linha_Encomenda (numencomenda, codproduto, Qtd) Encomenda (numencomenda, numcliente, dataenc) Cliente (numcliente, Cliente, endcliente) Top-Down vs Bottom-Up Top-Down vs Bottom-Up Levantamento de requisitos e Desenho de uma Base de Dados Top-Down Parte-se de uma análise das entidades e dos tipos de relacionamentos, segundo o modelo E-R, e, com base numa análise dos diferentes tipos de relacionamentos entre as entidades, determinam-se as tabelas a incluir na BD; Bottom-up Começa-se por considerar uma ou mais tabelas que contenham os atributos ou campos considerados necessários à representação de cada aspecto da situação e, com base num processo de normalização da informação, determinam-se as tabelas necessárias; 60

61 Campos, Ricardo. (2008). Apresentação de. Access Top-Down vs Bottom-Up Top-Down vs Bottom-Up Levantamento de requisitos e Desenho de uma Base de Dados Estas duas estratégias não são mutuamente exclusivas. Na prática é bastante proveitoso utilizar processos de uma e de outra; Podemos começar por abordar uma situação pela estratégia top-down, procurando captar, numa visão global, as entidades e relacionamentos que nos parecem retratar adequadamente essa situação, e, numa fase posterior, recorrer à estratégia bottom-up, para refinar a estrutura da BD, procurando assegurar que as tabelas fiquem correctamente normalizadas. Top-Down vs Bottom-Up Levantamento de requisitos e Desenho de uma Base de Dados Levantamento de Requisitos e Desenho de uma BD Levantamento de Requisitos Para a construção do modelo E-R, o analista de sistemas necessita recolher dados relevantes junto do utilizador final; Desenho de uma base de dados O desenho de uma base de dados passa pela definição do modelo E-R (captura da realidade): Elaboração no papel de um primeiro esboço da estrutura geral da BD; Definição exacta de cada entidade; Determinação dos relacionamentos; Revisão da estrutura obtida; 61

62 Campos, Ricardo. (2008). Apresentação de. Access Desenho de um esquema de Bases de Dados Ricardo Campos Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Contextualização A biblioteca do IPT tem por objectivo reorganizar a sua gestão. Em particular, pretende passar de um sistema centralizado para um sistema descentralizado em várias bibliotecas satélites; Os documentos da biblioteca, designados por publicações, têm associado a si, um tipo de publicação: livros, revistas, jornais, e-books, etc ; Enquadram-se numa categoria (exemplo: Informática; Medicina, etc ); E podem ser escritos por vários autores e quando aplicável editados por uma editora; 62

63 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Contextualização Cada publicação é identificada por um código da publicação e compreende um conjunto de características: título; idioma; número de páginas; imagem da capa; formato; descrição da obra; ISBN; local de publicação; depósito legal e número total de publicações disponíveis no conjunto de todas as bibliotecas; Nenhuma das características é de preenchimento obrigatório (até porque as revistas não têm por exemplo um autor). Por outro lado, características como o ISBN que dizem respeito a livros, denominam-se por ISBN, mas entendemse por ISSN, quando por exemplo a publicação é uma revista; Em cada uma das bibliotecas satélites, deve existir pelo menos um (podendo existir obviamente mais) exemplar de cada publicação; Cada exemplar de uma publicação tem uma cota única que o identifica de forma inequívoca; Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Contextualização Além do mais, cada exemplar tem como características a data de publicação; a data de aquisição; o número de edição; a possibilidade de ser uma publicação passível de ser ou não requisitada; um campo que valide se está ou não requisitado; um campo observações para descrever se a obra está danificada, etc e um campo CD que indique se o recurso vem acompanhado de cd ou não; Apenas a data de aquisição é de preenchimento obrigatório e o campo cd deve ser entendido como DVD quando for o caso; Cada uma das bibliotecas deve ter conhecimento em tempo real, do número publicações disponíveis; 63

64 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Contextualização A inscrição dos leitores é válida em qualquer uma das bibliotecas. São identificados por um código e tem como características o nome, morada, contacto, , etc ; Pertencem a um tipo de leitor, ao qual está associado um prazo de entrega. Por exemplo Professores tem direito a 5 dias, Alunos de Pós-Graduação 3 dias, etc A biblioteca deverá guardar informação (ou seja o histórico) relativa à requisição das publicações por parte dos leitores. Assim, necessita registar a data de requisição, a data prevista de entrega e um campo que registe se o recurso já foi devolvido ou não; Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Objectivos Gestão dos Recursos Todas as aquisições devem ser registadas no sistema através de um formulário criado para o efeito; Para isso é necessário considerar a criação de novas fichas, a consulta de publicações requisitadas, a consulta de publicações em atraso e a consulta de publicações por tipo de publicação; Devem também ser criados os respectivos formulários que permitam inserir o tipo de publicação, a categoria, a biblioteca onde existe o respectivo exemplar, etc.; 64

65 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Objectivos Gestão dos Leitores Todas as novas inscrições devem ser registadas no sistema através de um formulário criado para o efeito; Para isso é necessário considerar a criação de novas fichas, bem como a consulta de fichas existentes; Devem também ser criados os respectivos formulários que permitam inserir o tipo de leitor, etc.; Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Objectivos Requisição de Livros Todas as requisições devem ser registadas no sistema através de um formulário criado para o efeito; Para isso é necessário considerar a criação de novas fichas, bem como a consulta de fichas existentes; 65

66 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Objectivos Emissão de Relatórios Deve ser construído um relatório com informações relativas às publicações, agrupadas por tipo de publicação; Deve ser construído um relatório com informações relativas ao leitor e respectiva publicação cuja requisição caducou; Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Objectivos Menus Deve ser criado um menu para cada um dos pontos anteriores e um menu principal com botões para cada um deles; Macros Deve ser criada uma macro que abra o menu principal, assim que o Access seja executado; 66

67 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Conceptual (modelo E-R) Publicação vs tipopublicação tipopublicação 1 pertence Os documentos da biblioteca, designados por publicações, têm associado a si, um tipo de publicação N Publicação Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Conceptual (modelo E-R) Categoria tipopublicação 1 pertence As publicações enquadram-se numa categoria Categoria 1 pertence N Publicação 67

68 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Conceptual (modelo E-R) Editora tipopublicação 1 pertence As publicações, quando aplicável, podem ser editadas por uma editora Categoria 1 pertence N Publicação N Editora 1 edita Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Conceptual (modelo E-R) tipopublicação 1 pertence Autor obra N Autor As publicações podem ser produzidas por um ou mais autores Categoria 1 pertence N M Publicação N Editora 1 edita 68

69 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Conceptual (modelo E-R) Autor Exemplar tipopublicação 1 pertence obra N Uma publicação tem um conjunto de exemplares Categoria 1 pertence N M Publicação 1 N Editora 1 edita tem N Exemplares Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Conceptual (modelo E-R) tipopublicação 1 pertence Autor obra N Biblioteca Deve existir pelo menos um exemplar de cada publicação em todas as bibliotecas. Categoria 1 pertence N M Publicação 1 N Editora 1 edita tem Biblioteca 1 N tem N Exemplares 69

70 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Conceptual (modelo E-R) tipopublicação 1 pertence Autor obra N Leitor A inscrição dos leitores é válida em qualquer uma das bibliotecas. Categoria 1 pertence N M Publicação 1 N Editora 1 edita tem Biblioteca 1 N tem N Exemplares M requisição N Leitor Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Conceptual (modelo E-R) tipopublicação 1 pertence Autor obra N Leitor vs tipoleitor Um leitor pertence a um determinado tipo de leitor. Categoria 1 pertence M N Publicação N 1 tipoleitor 1 Editora 1 edita tem tem Biblioteca 1 N tem N Exemplares M requisição N N Leitor 70

71 Campos, Ricardo. (2008). Apresentação de. Access Desenho de uma Base de Dados para uma biblioteca Levantamento de requisitos Desenho da Base de Dados Modelo Lógico (modelo relacional) Categoria codcategoria descategoria tipopublicacao codtipopubl destipopubl Editora codeditora deseditora Morada Contacto Publicacao codpublicacao Titulo Idioma numpags imagemcapa Formato descricaoobra numpubldisp ISBN depositolegal localpubl codcategoria codtipopubl codeditora Biblioteca codbiblioteca Morada Contacto Obra codautor codpublicacao Exemplar Cota Obs dataaquisicao datapublicacao numedicao possbrequisitar Cd Requisitado codpublicacao codbiblioteca Autor codautor nome Requisicao Cota codleitor datarequisicao dataentrega Devolvido tipoleitor codtipoleitor destipoleitor prazoentrega Leitor codleitor Nome Morada Contacto codtipoleitor Desenho de um esquema de Bases de Dados em Access 2007 Ricardo Campos 71

72 Campos, Ricardo. (2008). Apresentação de. Access O Access é um SGBD relacional gráfico; Deverá ser a BD mais difundida a nível de computadores pessoais; Elementos Tabelas É o local onde as informações são armazenadas, devendo estas ser planeadas de modo a contenham informação sobre um só assunto. Uma tabela armazena os dados em registos (linhas) e campos (colunas); Consultas São pesquisas efectuadas aos dados que reúnem informação de uma ou mais tabelas e permitem a sua visualização por meio de formulários e relatórios. Uma consulta pode ser pensada como uma pesquisa de um conjunto particular de dados; Formulários São janelas, visualmente mais fáceis de se entenderem, destinadas à edição é à visualização dos dados das tabelas e consultas; 72

73 Campos, Ricardo. (2008). Apresentação de. Access Elementos Relatórios Os relatórios, podem ser oriundos de tabelas ou consultas, são similares aos formulários, com a diferença de serem orientados para a impressão dos dados na impressora; Macros Permitem executar acções automaticamente. Uma Macro pode ser atribuída a um botão, que por sua vez pode ser incluída num formulário. Por exemplo, é possível executar uma macro, que imprime um relatório ou abre um formulário, quando o utilizador carregar num botão; Elementos Tabelas Formulários Relatórios Consultas Macros 73

74 Campos, Ricardo. (2008). Apresentação de. Access Elementos Clique aqui para iniciar uma base de dados totalmente em branco Clique aqui para abrir uma base de dados Clique aqui para escolher uma categoria de templates Clique aqui para criar uma base de dados baseada num template Clique aqui para abrir uma base de dados usada recentemente Aborrecido? Clique aqui para ler sugestões acerca do Access 2007 Elementos Clique aqui para iniciar uma base de dados totalmente em branco 74

75 Campos, Ricardo. (2008). Apresentação de. Access Elementos Elementos Painel de Navegação Janela de Desenvolvimento no Access Depois dos dados normalizados, chegou a altura da criação das tabelas no access: Todos os dados no Access são armazenados em tabelas; As tabelas organizam os dados em colunas (denominadas campos) e em linhas (denominadas registos); Exemplo de uma tabela de clientes: Campos Registos 75

76 Campos, Ricardo. (2008). Apresentação de. Access no Access Há duas maneiras de criar tabelas no Access: Escolhe-se o elemento Create e uma das seguintes opções: Criar tabela introduzindo dados; Criar tabela na Vista de Estrutura; Vamos escolher esta opção Vista dos campos da tabela Descrição do campo Define-se o nome do campo Escolhe-se o tipo de dados para o campo respectivo 76

77 Campos, Ricardo. (2008). Apresentação de. Access Tipo de Dados de um campo A cada campo vai corresponder um nome; O nome dum campo em Access pode ter até 64 letras, incluindo espaços em branco. Os únicos caracteres que não pode ter são: (. ), (! ) e ( ] ); O campo pode ser de vários tipos de dados de acordo com a informação a ser armazenada nesse campo: Tipo de Dados de um campo Tipo de dados Utilizar para Tamanho Texto Texto ou combinações de texto e números, tais como endereço. Também inclui números que não requeiram cálculos, tal como números de telefone, Peças n.º ou códigos postais. Até 255 caracteres. Memo Texto longo e números, tais como notas ou descrições. Até caracteres. Número Os dados numéricos utilizados para cálculos matemáticos, excepto cálculos envolvendo dinheiro (utilize tipo de moeda). Defina a propriedade TamanhodoCampo para definir o tipo de número específico. 1, 2, 4 ou 8 bytes. 16 bytes apenas para ID. Data/Hora Datas e horas. 8 bytes. Moeda Valores de moeda. Utilize o tipo de dados Moeda para evitar problemas de conversão durante os cálculos. Com uma precisão de 15 dígitos à esquerda do ponto decimal e 4 dígitos à direita. 8 bytes. 77

78 Campos, Ricardo. (2008). Apresentação de. Access Tipo de Dados de um campo Tipo de dados Utilizar para Tamanho Numeração automática Sim/não Uma única sequência (incrementando por 1) ou números aleatórios inseridos automaticamente quando é adicionado um registo. Campos que irão conter apenas um de dois valores, tais como Sim/não, Verdadeiro/falso, Ligado/desligado. 4 bytes. 16 bytes apenas para ID. 1 bit. Hiperligação É um campo que irá armazenar hiperligações. Uma hiperligação pode ser caminho UNC ou um URL. Assistente de pesquisa Attachment Cria um campo que lhe permite escolher um valor de outra tabela ou de uma lista de valores utilizando uma caixa de combinação. Objectos (tais como documentos do Microsoft Word, folhas de cálculo do Microsoft Excel, imagens, sons ou outros dados binários) Até caracteres. O mesmo tamanho que o campo chave primária que é igualmente o campo de pesquisa. Até 1 gigabyte (limitado pelo espaço em disco). Objecto OLE Igual ao anterior. Maioritariamente usado em versões anteriores Até 1 gigabyte (limitado pelo espaço em disco). Tipo de Dados de um campo Tipo de dados Tamanho Byte Guarda números inteiros entre 0 e 255. Ocupa 1 byte. Integer Guarda números inteiros entre e Ocupa 2 bytes. Long Integer Guarda números inteiros entre até Ocupa 4 bytes. Single Double Guarda números com seis dígitos de precisão desde E38 até E38. Ocupa 4 bytes. Tipo por defeito. Guarda números com dez casas de precisão desde E308 até E308. Ocupa 8 bytes. 78

79 Campos, Ricardo. (2008). Apresentação de. Access Exemplo de uma tabela codautor está definido como campo chave. Outras propriedades do campo Exemplo de uma tabela Carregue aqui para modificar a forma como vê a tabela Carregue aqui com o botão direito do rato para modificar a forma como vê a tabela Datasheet View Design View 79

80 Campos, Ricardo. (2008). Apresentação de. Access Outras Propriedades do Campo Tamanho do campo No caso de ser texto o valor máximo é de 255 caracteres. O valor à partida é de 50 caracteres; Formato O formato varia de acordo com o tipo de informação do campo; Casas Decimais O número de dígitos que surge depois do zero; Legenda Através desta propriedade atribui-se um nome ao campo; Valor Predefinido O valor que surge antes de se colocar um dado; Outras Propriedades do Campo Regra de Validação A regra de validação a que as entradas de um campo tem de estar submetidas; Texto de Validação O texto que surge quando não é colocada uma entrada válida. 80

81 Campos, Ricardo. (2008). Apresentação de. Access Tabela Categoria Tabela tipopublicacao 81

82 Campos, Ricardo. (2008). Apresentação de. Access Tabela Editora Tabela Publicacao Ver Slide seguinte para ver como se define uma chave estrangeira Deve introduzir-se para o campo NumPublicacoesDisp o valor 1 como predefinido. 82

83 Campos, Ricardo. (2008). Apresentação de. Access Tabela Publicacao Para obter uma chave estrangeira, selecciona-se o campo Lookup Wizard Tabela Autor 83

84 Campos, Ricardo. (2008). Apresentação de. Access Tabela Obra Tabela Biblioteca 84

85 Campos, Ricardo. (2008). Apresentação de. Access Tabela Exemplar Tabela tipoleitor 85

86 Campos, Ricardo. (2008). Apresentação de. Access Tabela Leitor Tabela Requisiçao Deve introduzir-se para o campo DataRequisicao a função Agora como valor predefinido. 86

87 Campos, Ricardo. (2008). Apresentação de. Access Vista das tabelas criadas Tabelas criadas Depois das tabelas criadas, falta apenas relaciona-las Relações no Access Para relacionar as tabelas, vamos ao menu Database Tools e escolhemos a opção Relationships 87

88 Campos, Ricardo. (2008). Apresentação de. Access Relacionamentos já existentes Por via de termos criado as tabelas incluindo as ligações através de chaves estrangeiras (escolha do campo assistente de pesquisa), em princípio as mesmas já estarão ligadas. Caso isso não aconteça, basta clicar com o botão direito do rato e seleccionar a seguinte opção: Adicionar Relacionamentos Para relacionar as restantes tabelas basta arrastar as respectivas chaves primárias para cima da chaves estrangeiras existentes nas tabelas correspondentes; Quando tal é feito, aparece uma janela onde se devem seleccionar as opções da figura seguinte: Para as relações já existentes deve clicar-se em cima da linha e seguir o mesmo procedimento, por forma que seja assumido o tipo de relação; 88

89 Campos, Ricardo. (2008). Apresentação de. Access Vista Geral dos Relacionamentos no Access Ao contrário das tabelas, a maneira mais fácil de criar um formulário é através do Assistente. Para isso seleccione-se o Menu Create More Forms Form Wizard: 89

90 Campos, Ricardo. (2008). Apresentação de. Access utilizando o Assistente Escolhe-se a tabela ou consulta que vai servir de base ao formulário, neste caso será a tabela Categoria Campos disponíveis na tabela ou consulta Avançar Escolha de campos para o formulário (1 de cada vez ou todos ao mesmo tempo) Campos que irão estar disponíveis no formulário depois de escolhidos utilizando o Assistente Nesta janela o utilizador tem a possibilidade de escolher o esquema (modo como os dados vão ser apresentados) que pretende (Colunas, Tabela, Folha de dados, Justificado, Tabela dinâmica, Gráfico dinâmico) 90

91 Campos, Ricardo. (2008). Apresentação de. Access utilizando o Assistente Nesta janela o utilizador tem a possibilidade de escolher o estilo (aparência do formulário) que pretende. utilizando o Assistente Dar o nome ao formulário Modos de abertura do formulário Por fim o utilizador pode dar um nome ao formulário e escolher o modo como o formulário é aberto, ou para a introdução de dados ou para alteração da estrutura do formulário. 91

92 Campos, Ricardo. (2008). Apresentação de. Access Barra de ferramentas da estrutura do formulário Propriedades Caixa de Ferramentas Possibilidade de alternar entre a vista de estrutura e de formulário Criação de botões para formulários Devem ser inseridos 7 botões de acção em cada um dos formulários: Ir para o registo seguinte Ir para o registo anterior Ir para o primeiro registo Ir para o último registo Adicionar novo registo Eliminar registo Fechar formulário 92

93 Campos, Ricardo. (2008). Apresentação de. Access Criação de botões para formulários Para criar os botões de acção o ícone do assistente Desenha-se o botão no formulário e surge: tem de estar activo. Na janela do assistente, à esquerda estão as categorias das acções e à direita estão as acções. Criação de botões para formulários Depois de escolhida a categoria e a acção, pressiona-se o botão seguinte: Surge a seguinte janela onde o utilizador pode escolher texto ou uma imagem para o botão: Escrever Texto Escolher imagem 93

94 Campos, Ricardo. (2008). Apresentação de. Access Criação de botões para formulários Por fim o utilizador pode dar um nome ao botão e concluir: Propriedades dos vários componentes do formulário É possível seleccionar cada um dos componentes do formulário e editar as respectivas propriedades: 94

95 Campos, Ricardo. (2008). Apresentação de. Access Alterações às propriedades do formulário Categoria Seleccionam-se as propriedades do formulário e editam-se os seguintes campos: Legenda (Caption) = Nova Categoria; Selectores de registos (Record Selectors) = não; Botões de navegação (Navigation Buttons) = não; Linhas divisoras (Dividing Lines) = não; Seleccionar os rótulos codcategoria e descategoria previamente introduzidos e adaptá-los para nomes mais apropriados; Vista do formulário Categoria Depois de os registos terem sido introduzidos através do formulário é possível observar a tabela Categoria e os respectivos dados. A utilização de formulários para introduzir dados é mais fácil do que através da tabela: 95

96 Campos, Ricardo. (2008). Apresentação de. Access Formulário tipopublicacao Formulário Editora Deve seleccionar-se a propriedade máscara de introdução do campo contacto: Escolher a opção telemóvel: Se ficassemos pela opção telemóvel, ficariamos condicionados a formatos do estilo (9..). Por isso, fazemos seguinte e introduzimos a seguinte máscara: ;0;_ 96

97 Campos, Ricardo. (2008). Apresentação de. Access Formulário Editora Formulário Autor 97

98 Campos, Ricardo. (2008). Apresentação de. Access Formulário Publicacao Para os campos estrangeiros da tabela Publicacao, campos que são chave noutras tabelas, caso do codcategoria e codtipopublicacao, é automaticamente inserida uma caixa de combinação. As caixas de combinação mostram uma lista de valores para escolha, neste caso uma lista de valores presentes na tabela Categoria e TipoPublicacao, respectivamente. Em modo de visualização é possível reparar que apenas aparecem os códigos (tanto o da categoria como do tipo Publicação) Seleccione-se em modo de vista de estrutura o campo Agora nas propriedades, seleccione a query existente em Row Source Formulário Publicacao Selecciona-se também o campo da designação para que apareça Agora nas propriedades, seleccione-se Column Count e coloque-se o valor a 2 (para que apareça para lá do código a respectiva descrição) e seleccionese Column Widths definindo-se 0cm para a 1.ª coluna (por forma que fique oculta) 98

99 Campos, Ricardo. (2008). Apresentação de. Access Formulário Publicacao O Formulário Publicação ainda não está no entanto concluído. Dentro deste formulário, deveremos incluir 1 sub-formulário que lhe diz directamente respeito: Associação de um Autor a uma Publicação; Para isso, na vista de estrutura do formulário Publicação, deveremos seleccionar o SubFormulário da Caixa de Ferramentas: Formulário Publicacao No assistente de sub-formulários indicamos que os dados existem num formulário: 99

100 Campos, Ricardo. (2008). Apresentação de. Access Formulário Publicacao Note-se que o formulário Obra não foi construído. Assim teremos que o construir previamente: Observe-se a inclusão dos botões de navegação Formulário Publicacao Uma vez, o formulário Obra construído, iniciaremos no âmbito do formulário Publicacao, a inserção do sub-formulário obra: 100

101 Campos, Ricardo. (2008). Apresentação de. Access Formulário Publicacao Formulário Publicacao 101

102 Campos, Ricardo. (2008). Apresentação de. Access Formulário Biblioteca Formulário Exemplar Deve seleccionar-se a propriedade máscara de introdução do campo Data de Publicação e Data de Aquisição: Seleccionar Data Normal: 102

103 Campos, Ricardo. (2008). Apresentação de. Access Formulário Exemplar Formulário tipoleitor 103

104 Campos, Ricardo. (2008). Apresentação de. Access Formulário Leitor Formulário Requisição Para que a Data de Requisição tenha sempre a data actual, seleccionamos a propriedade OnEnter e inserimos o seguinte procedimento: 104

105 Campos, Ricardo. (2008). Apresentação de. Access Formulário Requisicao Interessa-nos também que a Data de Entrega seja definida de forma automática, considerando a Data de Requisição adicionado do campo Prazo de Entrega da tabela TipoLeitor Acontece que o nosso formulário Requisicao tem como base a tabela Requisição o qual não contempla o respectivo prazo de entrega. Vamos por isso fazer um pequeno ajustamento, o qual passa por criar uma consulta. Voltaremos aqui mais tarde. Agora vamos ver como se fazem consultas. Formulário Requisicao Depois de termos estudado as consultas, já sabemos agora como resolver o problema acima descrito Criamos a consulta QueryPrazoEntrega: 105

106 Campos, Ricardo. (2008). Apresentação de. Access Formulário Requisicao De seguida acrescentamos ao formulário uma text box associada ao campo PrazoEntrega da nossa consulta QueryPrazoEntrega A Data de Entrega será definida de acordo com o seguinte: seleccione-se a propriedade OnEnter e insira-se o seguinte procedimento: Considerando que o campo PrazoEntrega funciona apenas como campo auxiliar é possível ocultar a textbox As datas introduzidas automaticamente pelo sistema em Data Requisição e Data Entrega, são meramente indicativas e podem obviamente ser alteradas pelo funcionário, bastando para tal seleccionar o calendário existente no formulário Formulário Requisicao 106

107 Campos, Ricardo. (2008). Apresentação de. Access Formulário Requisicao O campo Devolvido da tabela Requisicao deve ter sempre o valor inverso do campo Requisitado da tabela Exemplar. Como é óbvio. Se uma publicação foi devolvida então já não se encontra requisitada e o inverso também. Para que isso aconteça, deve seleccionar-se a propriedade Ao Sair (On Exit) do campo de Verificação Devolvido E introduzir o seguinte procedimento Forms![Exemplar]![Requisitado].Value = Not (Forms![Requisicao]![Devolvido].Value) Menu de Navegação Para criar os menus de navegação basta seleccionar Database Tools Switchboard Manager A primeira vez em que a opção é seleccionada é necessário seleccionar o botão Sim em resposta à seguinte pergunta: 107

108 Campos, Ricardo. (2008). Apresentação de. Access Menu de Navegação Na janela abaixo temos referência ao nome do menu principal: Seleccione-se o menu Edit e em Switchboard Name coloca-se o nome Menu Principal. O Switchboard Manager fica agora com o seguinte aspecto: Menu de Navegação Menu Principal Gestão de Recursos Gestão de Leitores Gestão de Requisições Novas Categorias Novos Tipos de Publicação Novas Editoras Novos Autores Novas Bibliotecas Novos Exemplares Novos Leitores Novos Tipos de Leitores Nova Requisição 108

109 Campos, Ricardo. (2008). Apresentação de. Access Menu de Navegação Carrega-se no botão New para criar um submenu: Atribui-se-lhe o nome Menu1 - GRecursos: Repete-se o processo para: Menu2 GLeitores; Menu3 GRequisições Formulário Gestão de Recursos Seleccione-se agora Menu1- GRecursos e carregue-se no botão Edit. De seguida vamos criar 6 botões para cada um dos seguintes formulários: Novas Categorias Novos Tipos de Publicação Novas Editoras Novos Autores Novas Bibliotecas Novos Exemplares Seleccione-se o botão New e preencham-se as seguintes informações para Novas Categorias, Novos Tipos de Publicação, etc 109

110 Campos, Ricardo. (2008). Apresentação de. Access Formulário Gestão de Recursos O último botão de todos é um botão que permite voltar ao Menu Principal: O aspecto final do Switchboard Menu1 GRecursos é o seguinte: Formulário Gestão de Leitores Seleccione-se agora Menu1- GLeitores e carregue-se no botão Edit. De seguida vamos criar 6 botões para cada um dos seguintes formulários: Novos Leitores Novos Tipos de Leitores Seleccione-se o botão New e preencham-se as seguintes informações para Novas Leitores e Novos Tipos de Leitores: 110

111 Campos, Ricardo. (2008). Apresentação de. Access Formulário Gestão de Leitores O último botão de todos é um botão que permite voltar ao Menu Principal: O aspecto final do Switchboard Menu1 GRecursos é o seguinte: Formulário Gestão de Requisições Seleccione-se agora Menu1- GRequisições e carregue-se no botão Edit. De seguida vamos criar 1 botão para cada um dos seguintes formulários: Nova Requisição Seleccione-se o botão New e preencham-se as seguintes informações para Novas Requisições: 111

112 Campos, Ricardo. (2008). Apresentação de. Access Formulário Gestão de Requisições O último botão de todos é um botão que permite voltar ao Menu Principal: O aspecto final do Switchboard Menu1 GRecursos é o seguinte: Menu de Navegação Uma vez criados os submenus é agora possível criar os botões no menu principal por forma a lhes podermos aceder. Seleccione-se agora MenuPrincipal e carregue-se no botão Edit. De seguida vamos criar 1 botão para cada um dos seguintes submenus: Gestão de Recursos Gestão de Leitores Gestão de Requisições Seleccione-se o botão New e preencham-se as seguintes informações para Gestão de Recursos, Gestão de Leitores e Gestão de Requisições: 112

113 Campos, Ricardo. (2008). Apresentação de. Access Menu de Navegação O último botão de todos é um botão que permite encerrar a aplicação: O aspecto final do Switchboard Menu Principal é o seguinte: Menu de Navegação Abra-se agora o formulário Switchboard: Cada um dos botões possibilita o acesso aos restantes submenus. 113

114 Campos, Ricardo. (2008). Apresentação de. Access no Access Tal como nas tabelas, a maneira mais fácil de criar uma consulta é através da opção de Design: no Access De seguida aparece uma janela com as tabelas disponíveis para consulta Tabelas disponíveis em Gestão de Bibliotecas Clicar depois de escolher as tabelas 114

115 Campos, Ricardo. (2008). Apresentação de. Access Exemplo 1 de criação de uma consulta Suponhamos que queremos saber a que tipo de publicação corresponde uma dada publicação. Adicionamos as duas tabelas: Exemplo 1 de criação de uma consulta A janela das consultas está dividida de forma que as tabelas fiquem na parte de cima da janela e os campos fiquem na grelha da parte de baixo da janela: Para adicionar os campos à grelha, basta dar 2 clics sobre os campos na tabela pretendida. 115

116 Campos, Ricardo. (2008). Apresentação de. Access Exemplo 1 de criação de uma consulta Guardamos a consulta Para visualizarmos o resultado final da consulta, seleccionamos a vista de folha de dados Exemplo 2 de criação de uma consulta Suponhamos agora que queremos consultar todas as publicações de um dado tipo. Para isso o sistema deve interrogar o utilizador sobre qual o tipo de publicação a que quer restringir a sua consulta: 116

117 Campos, Ricardo. (2008). Apresentação de. Access Exemplo 2 de criação de uma consulta A execução da consulta, provocará uma pergunta por parte do sistema que restringirá o conjunto de resultados apenas aos títulos cujo tipo de publicação pertencer, no caso do exemplo, a Livro: Exemplo 3 de criação de uma consulta O utilizador poderá no entanto achar mais conveniente ter uma consulta directamente relacionada com o tipo de publicação Livro, ao invés de lhe ser feita uma pergunta sobre qual o tipo de publicação: 117

118 Campos, Ricardo. (2008). Apresentação de. Access Exemplo 3 de criação de uma consulta A execução da consulta, retornará todos os títulos cujo tipo de publicação seja Livro. Obviamente este tipo de consulta é mais restritivo, uma vez que o utilizador não pode escolher o tipo de publicação. Tal não quer dizer que não seja útil. Exemplo 4 de criação de uma consulta Suponhamos agora que queremos listar todos os Leitores cuja primeira letra do nome começa em R: 118

119 Campos, Ricardo. (2008). Apresentação de. Access Consultas a criar No âmbito da nossa aplicação vamos criar as seguintes consultas: Consulta de Publicações Requisitadas e Não Requisitadas Consulta de Publicações com Devolução em Atraso Etc Consulta de Publicações Requisitadas e Não Requisitadas A ideia é construir uma consulta que pergunte qual a nome da publicação cuja informação queremos consultar. A informação que queremos devolver, é o próprio nome da publicação, se a mesma está ou não requisitada, a cota, qual o nome do leitor que tem a obra requisitada, qual a data prevista de devolução e o nome das bibliotecas onde se encontra disponível: 119

120 Campos, Ricardo. (2008). Apresentação de. Access Consulta de Publicações Requisitadas e Não Requisitadas Observe-se que especificamos como critério do campo título, uma pergunta ao utilizador : [Qual o nome da publicação?] Para facilitarmos a vida ao bibliotecário, por forma que não seja exigível este digitar o nome completo da publicação, acrescentámos ao critério, como já tínhamos feito em consultas anteriores, a palavra Como. Assim o critério: Como [Qual o nome da publicação?], vai permitir que o utilizador da Base de Dados digite como nome da publicação, não necessariamente o nome completo da obra, mas apenas as primeiras letras seguido de *. Consulta de Publicações Requisitadas e Não Requisitadas O resultado final, é o conjunto de todos os títulos começados pela letra O, a respectiva biblioteca, a Cota da publicação, informação se o livro está ou não requisitado, por quem e a data de entrega prevista: 120

121 Campos, Ricardo. (2008). Apresentação de. Access Consulta de Publicações c/devolução em Atraso A ideia é construir uma consulta que devolva o nome do leitor, o nome da publicação que deveria ter sido devolvida, a cota, a data prevista de ser entregue e ultrapassada, restringida apenas à esfera da Biblioteca Central. Consulta de Publicações c/devolução em Atraso Observe-se que especificamos como critério do campo DesBiblioteca, a palavra Biblioteca Central por forma que restrinja apenas às publicações existentes nesta Biblioteca; Observe-se que especificamos como critério do campo DataEntrega, a condição <Agora(). Tal condição, permite que apenas sejam seleccionados registros cuja data prevista de entrega da publicação já tenha sido ultrapassada, em comparação com a data actual, que o sistema devolve através da função Agora() O resultado final, é o nome do Leitor, com indicação do título em atraso, respectiva cota e data prevista de ter entregue a publicação 121

122 Campos, Ricardo. (2008). Apresentação de. Access Formulário Gestão de Recursos Uma vez concluídas as consultas, poderemos incluir no formulário Gestão de Recursos as consultas que assim entendermos. Para isso teremos que alterar o formulário. no Access Tal como os formulários, a maneira mais fácil de criar um relatório é através da opção Criar Relatórios utilizando o Assistente: 122

123 Campos, Ricardo. (2008). Apresentação de. Access no Access Escolhe-se a tabela ou consulta que vai servir de base ao relatório, neste caso será a consulta CTipoPublicacao Campos disponíveis na tabela ou consulta Avançar Escolha de campos para o relatório (1 de cada vez ou todos ao mesmo tempo) Campos que irão estar disponíveis no relatório depois de escolhidos no Access Conforme os relacionamentos, o próprio access define o modo como os dados irão ser apresentados. 123

124 Campos, Ricardo. (2008). Apresentação de. Access no Access Podemos definir sequências de ordenação dos registos. no Access Nesta janela, escolhemos o esquema do relatório, a orientação do papel e podemos ajustar a largura dos campos. 124

125 Campos, Ricardo. (2008). Apresentação de. Access no Access Define-se o estilo para o relatório. no Access Por fim, dá-se o nome e conclui-se a criação do relatório. 125

126 Campos, Ricardo. (2008). Apresentação de. Access no Access Depois do relatório concluído deveremos mudá-lo para vista de estrutura por forma a adaptar os campos (nomes, tamanhos, etc ) Uma vez concluídos os relatórios, poderemos construir um formulário Gestão de Relatórios os relatórios que assim entendermos. Macros As macros servem para automatizar tarefas. Por exemplo a macro Autoexec permite executar uma acção quando a base de dados é aberta Neste caso pretendemos abrir o formulário principal quando a base de dados for aberta: 126

127 Campos, Ricardo. (2008). Apresentação de. Access Macros Escolhe-se a acção AbrirFormulário (no caso o formulário geral) Indicar acção: Indicar nome do formulário: A macro tem de ser obrigatoriamente gravada com o nome Autoexec: Transacções e Recuperação Ricardo Campos (ricardo.campos@ipt.pt) 127

Campos, Ricardo. (2007). Apresentação de Bases de Dados. Microsoft SQL Server 2005. Linguagem SQL. Sql Server BI Development Studio. 457 slides.

Campos, Ricardo. (2007). Apresentação de Bases de Dados. Microsoft SQL Server 2005. Linguagem SQL. Sql Server BI Development Studio. 457 slides. Campos, Ricardo. (2007). Apresentação de. Microsoft SQL Ricardo Campos (ricardo.campos@ipt.pt) Autoria Esta apresentação foi desenvolvida por Ricardo Campos, docente do Instituto Politécnico de Tomar.

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO CONCEITOS BÁSICOS 1 Necessidade das base de dados Permite guardar dados dos mais variados tipos; Permite

Leia mais

Computadores e Sistemas de Informação. Bases de Dados Relacionais (linguagem SQL)

Computadores e Sistemas de Informação. Bases de Dados Relacionais (linguagem SQL) Computadores e Sistemas de Informação Bases de Dados Relacionais (linguagem SQL) 2004/2005 Utilidade das Bases de Dados Recolha e processamento de dados que possuem um volume significativo, que são interrelacionados,

Leia mais

Bancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações

Bancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações Tópicos Conceitos Básicos Bancos de Dados Sistemas de Bancos de Dados Sistemas de Gerenciamento de Bancos de Dados Abstração

Leia mais

Construir um modelo de dados é: - Identificar, Analisar e Registar a política da organização acerca dos dados

Construir um modelo de dados é: - Identificar, Analisar e Registar a política da organização acerca dos dados 4. Modelo Entidade Associação 4.1. Introdução Modelo de Dados. Visão dos dados em vez de visão das aplicações. Eliminação de redundâncias. Partilha de dados pelas aplicações Construir um modelo de dados

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

Revisão de Banco de Dados

Revisão de Banco de Dados Revisão de Banco de Dados Fabiano Baldo 1 Sistema de Processamento de Arquivos Antes da concepção dos BDs o registro das informações eram feitos através de arquivos. Desvantagens: Redundância e Inconsistência

Leia mais

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Introdução BD desempenha papel crítico em todas as áreas em que computadores são utilizados: Banco: Depositar ou retirar

Leia mais

Banco de Dados I. Introdução. Fabricio Breve

Banco de Dados I. Introdução. Fabricio Breve Banco de Dados I Introdução Fabricio Breve Introdução SGBD (Sistema Gerenciador de Banco de Dados): coleção de dados interrelacionados e um conjunto de programas para acessar esses dados Coleção de dados

Leia mais

Disciplina de Banco de Dados Introdução

Disciplina de Banco de Dados Introdução Disciplina de Banco de Dados Introdução Prof. Elisa Maria Pivetta CAFW - UFSM Banco de Dados: Conceitos A empresa JJ. Gomes tem uma lista com mais ou menos 4.000 nomes de clientes bem como seus dados pessoais.

Leia mais

Introdução Banco de Dados

Introdução Banco de Dados Introdução Banco de Dados Vitor Valerio de Souza Campos Adaptado de Vania Bogorny Por que estudar BD? Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária reserva de hotel matrícula em

Leia mais

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO ACCESS 2010 Conceitos Básicos Ficha Informativa Professor : Vanda Pereira módulo didáctico Conceitos Básicos Necessidade das base de dados Permite guardar dados

Leia mais

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos Introdução Banco de Dados Por que usar BD? Vitor Valerio de Souza Campos Adaptado de Vania Bogorny 4 Por que estudar BD? Exemplo de um BD Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária

Leia mais

Bases de Dados. O que é uma Base de Dados? Pós-Grduação em SIG

Bases de Dados. O que é uma Base de Dados? Pós-Grduação em SIG Bases de Dados O que é uma Base de Dados? Dados Pode-se começar por tentar dar uma definição do que são Dados. Os dados são factos em bruto, que não são necessáriamente relevantes para qualquer coisa que

Leia mais

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon (edson@esucri.com.

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon (edson@esucri.com. Sistemas da Informação Banco de Dados I Edson Thizon (edson@esucri.com.br) 2008 Apresentação (mini-currículo) Formação Acadêmica Mestrando em Ciência da Computação (UFSC/ ) Créditos Concluídos. Bacharel

Leia mais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 1 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Apresenta a diferença entre dado e informação e a importância

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

PLANIFICAÇÃO MODULAR ANO LECTIVO 2015 / 2016

PLANIFICAÇÃO MODULAR ANO LECTIVO 2015 / 2016 PLANIFICAÇÃO MODULAR ANO LECTIVO 2015 / 2016 CURSO/CICLO DE FORMAÇÃO Técnico de Eletrotecnia e Técnico de Gestão de Equipamentos Informáticos / 2015/2018 DISCIPLINA: Tecnologias da Informação e Comunicação

Leia mais

LINGUAGEM DE BANCO DE DADOS

LINGUAGEM DE BANCO DE DADOS LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados

Leia mais

Desenvolvimento de uma base de dados. Relação. Modelo lógico: SGBD relacional

Desenvolvimento de uma base de dados. Relação. Modelo lógico: SGBD relacional Desenvolvimento de uma base de dados Realidade Bases de dados relacionais e SQL Conceitos básicos de bases de dados relacionais A 3ª forma normal Structured Query Language (SQL) Modelo conceptual (e.g.

Leia mais

Bases de Dados. Bibliografia. 1. Parte I Componente Teórica. Pedro Quaresma

Bases de Dados. Bibliografia. 1. Parte I Componente Teórica. Pedro Quaresma Índice Bases de Dados Pedro Quaresma Departamento de Matemática Universidade de Coimbra 2010/2011 1. Parte I Componente Teórica 1.1 Introdução 1.2 Modelo ER 1.3 Modelo Relacional 1.4 SQL 1.5 Integridade

Leia mais

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados. BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br INTRODUÇÃO Hoje é

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

FACULDADE INTEGRADAS DE PARANAÍBA ADMINISTRAÇÃO DE EMPRESAS. Bancos de Dados Conceitos Fundamentais

FACULDADE INTEGRADAS DE PARANAÍBA ADMINISTRAÇÃO DE EMPRESAS. Bancos de Dados Conceitos Fundamentais FACULDADE INTEGRADAS DE PARANAÍBA ADMINISTRAÇÃO DE EMPRESAS Bancos de Dados Conceitos Fundamentais Tópicos Conceitos Básicos Bancos de Dados Sistemas de Bancos de Dados Sistemas de Gerenciamento de Bancos

Leia mais

Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com

Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Introdução a Banco de Dados Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com 12/06/2013 Sumário Motivação da Disciplina

Leia mais

Sistemas de Gestão de Bases de Dados

Sistemas de Gestão de Bases de Dados Cadeira de Tecnologias de Informação Ano lectivo 2007/08 Sistemas de Gestão de Bases de Dados Prof. Mário Caldeira Profª Ana Lucas Dr. Fernando Naves Engª Winnie Picoto Engº Luis Vaz Henriques Dr. José

Leia mais

GBC043 Sistemas de Banco de Dados. Introdução. Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM

GBC043 Sistemas de Banco de Dados. Introdução. Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM GBC043 Sistemas de Banco de Dados Introdução Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM Página 2 Definição BD Def. Banco de Dados é uma coleção de itens de dados

Leia mais

Banco de Dados. Uma coleção de dados relacionados [ELMASRI/NAVATHE]

Banco de Dados. Uma coleção de dados relacionados [ELMASRI/NAVATHE] 1/6 Banco de Dados O que é um Banco de Dados? Uma coleção de dados relacionados [ELMASRI/NAVATHE] Conjunto de dados integrados que tem por objetivo atender a uma comunidade específica [HEUSER] Um conjunto

Leia mais

SISTEMA GERENCIADOR DE BANCO DE DADOS

SISTEMA GERENCIADOR DE BANCO DE DADOS BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br SISTEMA GERENCIADOR

Leia mais

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada. Conceitos básicos Angélica Toffano Seidel Calazans E-mail: angelica_toffano@yahoo.com.br Conceitos introdutórios de Modelagem de dados Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

Leia mais

Módulo 4: Gerenciamento de Dados

Módulo 4: Gerenciamento de Dados Módulo 4: Gerenciamento de Dados 1 1. CONCEITOS Os dados são um recurso organizacional decisivo que precisa ser administrado como outros importantes ativos das empresas. A maioria das organizações não

Leia mais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 2 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Revisão sobre Banco de Dados e SGBDs Aprender as principais

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC 10º C. Planificação de. Curso Profissional de Técnico de Secretariado

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC 10º C. Planificação de. Curso Profissional de Técnico de Secretariado Escola Básica e Secundária de Velas Planificação de TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC Curso Profissional de Técnico de Secretariado 10º C MÓDULO 1 FOLHA DE CÁLCULO Microsoft Excel Conteúdos

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB. Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados

Curso de Aprendizado Industrial Desenvolvedor WEB. Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados Modelo para organização dos dados de um BD. define um conjunto de conceitos para

Leia mais

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios BANCO DE DADOS Fixação dos conteúdos Integridade Referencial Normalização Exercícios BANCO DE DADOS X SGBD Banco de Dados: Um "banco de dados" pode ser definido como um conjunto de "dados" devidamente

Leia mais

INTRODUÇÃO. Diferente de Bando de Dados

INTRODUÇÃO. Diferente de Bando de Dados INTRODUÇÃO Diferente de Bando de Dados 1 INTRODUÇÃO DADOS São fatos conhecidos que podem ser registrados e que possuem significado. Ex: venda de gasolina gera alguns dados: data da compra, preço, qtd.

Leia mais

OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs.

OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs. BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br OBJETIVOS Orientações

Leia mais

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD Introdução 1. CONCEITOS BÁSICOS DE BD, SBD E SGBD A importância da informação para a tomada de decisões nas organizações tem impulsionado o desenvolvimento dos sistemas de processamento de informações.

Leia mais

Disciplina: Unidade III: Prof.: E-mail: Período:

Disciplina: Unidade III: Prof.: E-mail: Período: Encontro 08 Disciplina: Sistemas de Banco de Dados Unidade III: Modelagem Lógico de Dados Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM Relembrando... Necessidade de Dados Projeto

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

Leia mais

Aprend.e Sistema integrado de formação e aprendizagem

Aprend.e Sistema integrado de formação e aprendizagem Aprend.e Sistema integrado de formação e aprendizagem Pedro Beça 1, Miguel Oliveira 1 e A. Manuel de Oliveira Duarte 2 1 Escola Aveiro Norte, Universidade de Aveiro 2 Escola Aveiro Norte, Departamento

Leia mais

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento. Roteiro Modelo de Dados Relacional Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Introdução

Leia mais

Função dos Sistemas de Bases de Dados Visão dos dados Modelos de dados Linguagem de Definição de Dados Linguagem de Manipulação de Dados Gestão de

Função dos Sistemas de Bases de Dados Visão dos dados Modelos de dados Linguagem de Definição de Dados Linguagem de Manipulação de Dados Gestão de Capítulo 1: Introdução Função dos Sistemas de Bases de Dados Visão dos dados Modelos de dados Linguagem de Definição de Dados Linguagem de Manipulação de Dados Gestão de Transacções Gestão de Armazenamento

Leia mais

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores Primeiro Teste 21 de Outubro de 2006, 9:00H 10:30H Nome: Número:

Leia mais

Sistemas de Informação

Sistemas de Informação MODELO CONCEPTUAL DE DADOS Escola Superior de Tecnologia e Gestão de Felgueiras Engenharia Informática 3º ano - 2003/2004 Ana Maria Madureira 1. MODELO CONCEPTUAL DE DADOS Descreve o S.I. da Organização

Leia mais

Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos.

Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos. 1. Introdução aos Sistemas de Bases de Dados Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos. O conceito de base de dados faz hoje parte do nosso

Leia mais

Gestão de Tecnologia da Informação

Gestão de Tecnologia da Informação Gestão de Tecnologia da Informação Banco de Dados Prof. Gilberto B. Oliveira Tópicos Projeto de Banco de Dados (Button-Up) Modelagem conceitual Modelagem lógica Exemplo: Implementação do modelo Escola

Leia mais

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL SQL APOSTILA INTRODUÇÃO Uma linguagem de consulta é a linguagem por meio da qual os usuários obtêm informações do banco de dados. Essas linguagens são, tipicamente, de nível mais alto que as linguagens

Leia mais

05/06/2012. Banco de Dados. Gerenciamento de Arquivos. Gerenciamento de Arquivos Sistema Gerenciador de Banco de Dados Modelos de Dados

05/06/2012. Banco de Dados. Gerenciamento de Arquivos. Gerenciamento de Arquivos Sistema Gerenciador de Banco de Dados Modelos de Dados Banco de Dados Gerenciamento de Arquivos Sistema Gerenciador de Banco de Dados Modelos de Dados Gerenciamento de Arquivos Gerenciamento de Arquivos 1 Gerenciamento de Arquivos Em uma indústria são executadas

Leia mais

Sistemas de Bases de Dados

Sistemas de Bases de Dados Sistemas de Bases de Dados Carlos Viegas Damásio José Alferes e Carlos Viegas Damásio Sistemas de Bases de Dados 2014/15 Objectivos - Em Bases de Dados (2º ano) pretendia-se: Que os estudantes fossem capazes

Leia mais

Faculdade Lourenço Filho - ENADE 2011-1

Faculdade Lourenço Filho - ENADE 2011-1 1. Quando se constrói um banco de dados, define-se o modelo de entidade e relacionamento (MER), que é a representação abstrata das estruturas de dados do banco e seus relacionamentos. Cada entidade pode

Leia mais

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS Planificação Anual da Disciplina de TIC Módulos 1,2,3-10.ºD CURSO PROFISSIONAL DE TÉCNICO DE APOIO À GESTÃO DESPORTIVA Ano Letivo 2015-2016 Manual adotado:

Leia mais

Trabalhos Práticos. Programação II Curso: Engª Electrotécnica - Electrónica e Computadores

Trabalhos Práticos. Programação II Curso: Engª Electrotécnica - Electrónica e Computadores Trabalhos Práticos Programação II Curso: Engª Electrotécnica - Electrónica e Computadores 1. Objectivos 2. Calendarização 3. Normas 3.1 Relatório 3.2 Avaliação 4. Propostas Na disciplina de Programação

Leia mais

Teoria De Bases de dados

Teoria De Bases de dados Teoria De Bases de dados Paulo Leocádio Índice A informática na empresa...2 Da dependência à independência dos dados...3 Os três níveis da arquitectura de um SGBD...6 Funções e estrutura de um SGBD...7

Leia mais

Microsoft Access 2010. Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento

Microsoft Access 2010. Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento Microsoft Access 2010 Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento 1 Principais objetos do Access Tabelas Guardam a informação da BD (Base de Dados)

Leia mais

Oficina. Praça das Três Caixas d Água Porto Velho - RO

Oficina. Praça das Três Caixas d Água Porto Velho - RO Oficina Praça das Três Caixas d Água Porto Velho - RO Oficina Ministrante: Marcel Leite Rios Apresentação Pessoal Marcel Leite Rios Prof. de Informática IFRO Graduado: Sistemas de Informação - ULBRA MBA

Leia mais

Banco de Dados I. 1. Conceitos de Banco de Dados

Banco de Dados I. 1. Conceitos de Banco de Dados Banco de Dados I 1. Conceitos de Banco de Dados 1.1. Características de um Banco de Dados. 1.2. Vantagens na utilização de um BD. 1.3. Quando usar e não usar um Banco de Dados. 1.4. Modelos, Esquemas e

Leia mais

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados -

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados - Banco de Dados Aula 02 Modelagem de Dados Roteiro Definição Evolução Projeto de BD Abstração Esquema e Instância Definição É uma representação, normalmente gráfica, de estruturas de dados reais. Auxilia

Leia mais

Modelo de Dados. Modelos Conceituais

Modelo de Dados. Modelos Conceituais Modelo de Dados Modelo para organização dos dados de um BD define um conjunto de conceitos para a representação de dados exemplos: entidade, tabela, atributo,... existem modelos para diferentes níveis

Leia mais

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 7 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Aprender sobre a modelagem lógica dos dados. Conhecer os

Leia mais

Etapas da evolução rumo a tomada de decisão: Aplicações Isoladas: dados duplicados, dados inconsistentes, processos duplicados.

Etapas da evolução rumo a tomada de decisão: Aplicações Isoladas: dados duplicados, dados inconsistentes, processos duplicados. Histórico Etapas da evolução rumo a tomada de decisão: Aplicações Isoladas: dados duplicados, dados inconsistentes, processos duplicados. Sistemas Integrados: racionalização de processos, manutenção dos

Leia mais

ferramentas de produtividade

ferramentas de produtividade ferramentas de produtividade modelização de dados normalização de dados as bases de dados 3 2002 Luis Borges Gouveia (http://www.ufp.pt/~lmbg) 1 modelização de dados 3 abordagens mínimo comum utilizar

Leia mais

BANCO DE DADOS AULA 02 INTRODUÇÃO AOS BANCOS DE DADOS PROF. FELIPE TÚLIO DE CASTRO 2015

BANCO DE DADOS AULA 02 INTRODUÇÃO AOS BANCOS DE DADOS PROF. FELIPE TÚLIO DE CASTRO 2015 BANCO DE DADOS AULA 02 INTRODUÇÃO AOS BANCOS DE DADOS PROF. FELIPE TÚLIO DE CASTRO 2015 NA AULA PASSADA... 1. Apresentamos a proposta de ementa para a disciplina; 2. Discutimos quais as ferramentas computacionais

Leia mais

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados Banco de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix

Leia mais

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds

Leia mais

INTRODUÇÃO E CONCEITOS BÁSICOS. Prof. Ronaldo R. Goldschmidt

INTRODUÇÃO E CONCEITOS BÁSICOS. Prof. Ronaldo R. Goldschmidt INTRODUÇÃO E CONCEITOS BÁSICOS Prof. Ronaldo R. Goldschmidt Hierarquia Dado - Informação - Conhecimento: Dados são fatos com significado implícito. Podem ser armazenados. Dados Processamento Informação

Leia mais

Introdução à Banco de Dados. Definição

Introdução à Banco de Dados. Definição Universidade Federal da Bahia Departamento de Ciência da Computação (DCC) Disciplina: Banco de Dados Profª. Daniela Barreiro Claro Introdução à Banco de Dados Definição Um banco de dados é uma coleção

Leia mais

Definição do Conceito. Instalação e Gestão de Redes Informáticas. Gestão e organização da informação

Definição do Conceito. Instalação e Gestão de Redes Informáticas. Gestão e organização da informação Instalação e Gestão de Redes Informáticas Gestão e organização da informação Definição do Conceito Uma base de dados é, por definição, um conjunto organizado de dados, disponível a todos os utilizadores

Leia mais

Ficheiros de dados, registos e campos pág. 2 Limitações das bases de dados baseadas numa só tabela pág. 2 Sistemas de Gestão de Base de Dados pág.

Ficheiros de dados, registos e campos pág. 2 Limitações das bases de dados baseadas numa só tabela pág. 2 Sistemas de Gestão de Base de Dados pág. Conteúdos Dos ficheiros de dados aos sistemas de gestão de base de dados Ficheiros de dados, registos e campos pág. 2 Limitações das bases de dados baseadas numa só tabela pág. 2 Sistemas de Gestão de

Leia mais

Instituto Politécnico de Beja Escola Superior de Tecnologia e Gestão. GesStock. Engenharia Informática. Base de Dados II

Instituto Politécnico de Beja Escola Superior de Tecnologia e Gestão. GesStock. Engenharia Informática. Base de Dados II Instituto Politécnico de Beja Escola Superior de Tecnologia e Gestão GesStock Aplicação para Gestão de Stocks Engenharia Informática Base de Dados II Docente: Artur Lança Isabel Sofia Brito Nuno Gonçalo

Leia mais

Aspectos genéricos - Base de Dados

Aspectos genéricos - Base de Dados Aspectos genéricos - Base de Dados 1) Ficheiros de dados, registos e campos 2) Base de Dados Flat_File (de uma tabela) 2.1) Especificação e exemplo 2.2) Limitações das bases de dados baseadas em uma só

Leia mais

CICLO DE VIDA DE UM BD

CICLO DE VIDA DE UM BD BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br CICLO DE VIDA DE UM

Leia mais

GereComSaber. Desenvolvimento de Sistemas de Software. Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática

GereComSaber. Desenvolvimento de Sistemas de Software. Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática Desenvolvimento de Sistemas de Software Ano Lectivo de 2009/10 GereComSaber Ana Duarte, André Guedes, Eduardo

Leia mais

Roteiro. Conceitos e Arquitetura de Sistemas de Banco de Dados. Conceitos e Arquiteturas de Sistemas de Banco de Dados. BCC321 - Banco de Dados I

Roteiro. Conceitos e Arquitetura de Sistemas de Banco de Dados. Conceitos e Arquiteturas de Sistemas de Banco de Dados. BCC321 - Banco de Dados I Roteiro Conceitos e Arquitetura de Sistemas de Banco de Dados Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz

Leia mais

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs 1 Bancos de Dados - Introdução Melissa Lemos melissa@inf.puc-rio.br Tópicos Evolução dos Sistemas de Informação Esquemas Modelos Conceitual Lógico Características de SGBDs 2 Evolução tempo Programas e

Leia mais

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER )

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER ) AULA 02 BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR O Modelo Entidade-Relacionamento ( MER ) Fases do Projeto de Bases de Dados (EN94)- O Modelo Entidade- Relacionamento Definição : modelo

Leia mais

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)?

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)? Roteiro BCC321 - Banco de Dados I Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Conceitos Básicos Banco

Leia mais

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico Banco de Dados // 1 Banco de Dados // 2 Conceitos BásicosB Engenharia da Computação UNIVASF BANCO DE DADOS Aula 1 Introdução a Banco de Dados Campo representação informatizada de um dado real / menor unidade

Leia mais

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados 1. Conceitos Básicos No contexto de sistemas de banco de dados as palavras dado e informação possuem o mesmo significado, representando uma

Leia mais

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto LEIC-A, LEIC-T, LETI, MEIC-T, MEIC-A Engenharia de Software e Sistemas Distribuídos 2 o Semestre 2014/2015 Enunciado Geral do Projecto O que se segue é uma descrição geral do domínio do projecto a desenvolver

Leia mais

Profa. Daniela Barreiro Claro

Profa. Daniela Barreiro Claro Profa. Daniela Barreiro Claro Modelar é criar representações do mundo real A modelagem relacional pode ser representada via MER (Modelo de Entidade Relacionamento) O MER define estruturas e restrições

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br BANCO DE DADOS info 3º ano Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br BANCO DE DADOS Unidade 1 - Introdução Dados; Banco de Dados; Base de Dados; Projeto de Banco de Dados.

Leia mais

Objetivos Específico

Objetivos Específico Banco de Dados Ementa (DBA) Conceitos Gerais sobre Banco de Dados Instalação e configuração da Ferramenta de Banco de Dados. Elaboração de projeto de Banco de Dados. Implementação do projeto de Banco de

Leia mais

Técnicas e Linguagens para Banco de Dados I

Técnicas e Linguagens para Banco de Dados I Técnicas e Linguagens para Banco de Dados I Prof. Eduardo Ribeiro www.eduardo.trisolution.com.br eduardo@ trisolution.com.br Introdução Banco de Dados Dados x Informações Dados = É um elemento que mantém

Leia mais

GereComSaber. Disciplina de Desenvolvimento de Sistemas de Software. Sistema de Gestão de Serviços em Condomínios

GereComSaber. Disciplina de Desenvolvimento de Sistemas de Software. Sistema de Gestão de Serviços em Condomínios Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática 3ºAno Disciplina de Desenvolvimento de Sistemas de Software Ano Lectivo de 2009/2010 GereComSaber Sistema de

Leia mais

Rock In Rio - Lisboa

Rock In Rio - Lisboa Curso de Engenharia Informática Industrial Rock In Rio - Lisboa Elaborado por: Ano Lectivo: 2004/05 Tiago Costa N.º 4917 Turma: C Gustavo Graça Patrício N.º 4757 Turma: C Docente: Professora Maria Estalagem

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Conceitos Básicos Introdução Banco de Dados I Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Dados

Leia mais

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO DOMINE A 110% ACCESS 2010 A VISTA BACKSTAGE Assim que é activado o Access, é visualizado o ecrã principal de acesso na nova vista Backstage. Após aceder ao Access 2010, no canto superior esquerdo do Friso,

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais

ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL

ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL PROF. MS C. RICARDO ANTONELLO WWW.ANTONELLO.COM.B R PORQUE SER RELACIONAL? Hoje, há um claro predomínio dos SGBD relacionais, principalmente

Leia mais