Introdução. Bases de Dados (CC2005) Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto

Documentos relacionados
Bases de Dados. Parte I: Conceitos Básicos

Bases de Dados. Parte I: Conceitos Básicos. Parte I

Bases de Dados. Parte I. Introdução: conceitos básicos

Bases de Dados. Parte I: Conceitos Básicos

BCD29008 Banco de dados

Aula 2 BD Introdução. Profa. Elaine Faria UFU

BCD29008 Banco de dados

No contexto informático. Requisitos

Base de Dados. Sistemas de Informação. Base de Dados - Índice Introdução Componentes Base de Dados. Introdução. Introdução. Introdução.

Cap. 1 Arquitectura de Sistemas de Bases de Dados

Bases de Dados. Apresentação da disciplina. Programa

Introdução a B anco de Dados. INE5206 Introdução à Informática INE/CTC/UFSC Prof. Roberto Willrich

Conceitos e arquitetura do banco de dados. Andre Noel

Sistemas da Informação. Banco de Dados I. Edson Thizon

Revisão de Bancos de Dados

AULA 1 INTRODUÇÃO A BANCO DE DADOS E VISÃO GERAL DO SQL CONCEITUANDO BANCO DE DADOS MODELO RELACIONAL

Banco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP

Banco de Dados. Banco de Dados

Banco de Dados I Introdução SQL

A linguagem SQL

Caderno de Introdução Bases Dados

!" # Modelos de dados. 1ª geração. 2ª geração. 3ª geração. Modelo Hierárquico Modelo Rede. Modelo Relacional

Banco de Dados I. Prof. Edson Thizon

Introdução a Banco de Dados

15 - Introdução às Bases de Dados

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

Banco de Dados. Banco de Dados II. Característica fundamental de SGBDs. Abordagem SGBD x Processamento de Arquivos Tradicional

Banco de Dados. SGBD - Sistema de Gerenciamento de Banco de Dados Parte 2. Prof. Leonardo Vasconcelos

SQL Básica. Andre Noel

MODELAGEM DE DADOS -INTRODUÇÃO AO SQL. Prof. Angelo Augusto Frozza, M.Sc.

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO SISTEMAS DE GESTÃO DE BASE DE DADOS CONCEITOS BÁSICOS

Bases de Dados. DDL Data Definition Language

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais

Arquitetura dos SBDs Características e Benefícios Visão Geral de Projeto de BD MER: Entidades e Atributos Atividade.

Banco de Dados. Prof. Gleison Batista de Sousa Aula 01

O Modelo ER. Bases de Dados (CC2005) Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto

Banco de Dados. Professor: Marcelo Machado Cunha IFS Campus Aracaju

Técnico em Informática. Banco de Dados. Profª Ana Paula Mandelli

Sistemas de Informação e Bases de Dados 2012/2013. Modelo Relacional. Alberto Sardinha 2012 IST

LINGUAGEM, TIPOS DE USUÁRIOS DE SGBD E MODELOS DE DADOS

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Modelagem Conceitos e arquitetura do SBD; Modelo de dados entidade-relacionamento modelo ER; Modelo de dados relacional; Mapeamento ER para o

Versão º. Semestre de 2006 Marcelo Nogueira São José dos Campos - SP

Esquema da Relação. Modelo Relacional. Instância da Relação. Exemplo. Uma base de dados é uma colecção de uma ou mais relações com nomes distintos

Conceitos de Sistemas de Banco de Dados INE 5323

A U L A 1 I N T R O D U Ç Ã O A B A N C O D E D A D O S E V I S Ã O G E R A L D O S Q L

Apresentação da Unidade Curricular

A linguagem SQL

Banco de Dados - Conceitos. Baseado no material da Profa. Vania Bogorny (UFSC)

Modelagem Física e SQL

Sistema Gestor de Bancos de Dados (SGBD)

UERJ Oscar Luiz Monteiro de Farias 1. Bancos de Dados. Mestrado em Engenharia de Computação área de concentração Geomática

Aula 06 Sistemas Embarcados LT38C

INE 5423 Banco de Dados I

2. Conceitos e Arquiteturas de um SGBD

Introdução às Bases de Dados

Revisão Banco de Dados

BCD29008 Banco de dados

INE 5423 Banco de Dados I

Resolução dos exercícios da lista BD01

Banco de Dados Modelo Relacional, Algebra Relacional, SQL

MODELAGEM DE DADOS UNIDADE 1 Visão Geral. Luiz Leão

BANCO DE DADOS II SQL Básico. COTEMIG Gerson Borges

PCS3413. Engenharia de So-ware e Banco de Dados. Aula 16. Escola Politécnica da Universidade de São Paulo

Aula 01. Introdução aos sistemas de informação Conceitos de banco de dados Modelos de BD Linguagens de Banco de Dados Usuários de um Banco de Dados

Aplicações com Banco de Dados e Cliente-Servidor

UFG - Instituto de Informática

BANCO DE DADOS GERENCIAL 1 A U L A 2

Um SGBD permite que cada utilizador tenha uma vista diferente (abstrata) do conteúdo da base de dados;

Matéria Introdutória. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Aula de SQL Comandos DDL. André Luiz de Oliveira Eduardo Raul Hruschka

Arquitetura de Banco de Dados

Introdução ao Banco de Dados. Banco de Dados

Introdução. Motivação. Sistema Gerenciador de Banco de Dados (SGBD) Banco de Dados (BD) Sistema de Banco de Dados (SBD)

Licenciatura em Informática

Modelo Entidade-Relacionamento (E-R)

modelo introduzido por E. F. Codd Meados da década de 70: protótipos. INGRES (UC Berkeley, 73 77) System R (IBM Research at San Jose, 74 78)

Linguagem de Consulta Estruturada (SQL)

BANCO DE DADOS I Atualizado em 13 de maio de 2009


Aula 7 SBD ER para Relacional. Profa. Elaine Faria UFU

Unidade 5 05/11/2008. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Redes de Computadores

Benvindo ao Curso de Introdução ao Firebird com Ferramenta de Relatórios!

Sumário. SQL - Criação de Tabelas. Structured Query Language. SQL Versões. André Restivo. October 18, 2010

Banco de Dados. Aula 2 - Prof. Bruno Moreno 19/08/2011

Modelagem Física e SQL

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL

O modelo relacional encontra-se padronizado pela indústria de informática. Ele é chamado de

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

BANCO DE DADOS. Araújo Lima. Fev / Araújo

Banco de Dados 08/08/2010

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL

MATA60 BANCO DE DADOS Aula 5- Modelo Relacional. Prof. Daniela Barreiro Claro

Transcrição:

(CC2005) Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto Eduardo R. B. Marques DCC/FCUP parcialmente adaptado de slides por Fernando Silva e Ricardo Rocha

Alguns Conceitos Base de dados (BD): conjunto de dados que se relacionam entre si. Dados: factos conhecidos que têm algum significado e que podem ser guardados de forma persistente. Universo: parte do mundo real sobre o qual os dados guardados na base de dados dizem respeito. Empresa: empregados, departamentos, projetos,... Universidade: alunos, professores, unidades curriculares, inscrições, horários,... Contactos: nomes, endereços, telefones,... 2

Exemplo de uma BD CADEIRA CodCad Nome Docente 12347 José Aguiar Mota 34248 Álgebra Maria das Dores 32439 aos Computadores Carlos Duarte ALUNO NumMec Nome Curso 798764544 João Pinto LCC 345673451 Carlos Semedo MIERSI 487563546 Maria Silva LBIO 452212348 Pedro Costa LMAT INSCRIÇÃO NumMec CodCad 798764544 12347 345673451 12347 798764544 34248 452212348 32439 Universo = uma faculdade Dados: alunos, cadeiras, inscrições em cadeiras. 3

Inter-relacionamento entre dados CADEIRA CodCad Nome Docente 12347 José Aguiar Mota 34248 Álgebra Maria das Dores 32439 aos Computadores Carlos Duarte ALUNO NumMec Nome Curso 798764544 João Pinto LCC 345673451 Carlos Semedo MIERSI 487563546 Maria Silva LBIO 452212348 Pedro Costa LMAT INSCRIÇÃO NumMec CodCad 798764544 12347 345673451 12347 798764544 34248 452212348 32439 Os dados numa BD relacionam-se entre si de acordo com o universo modelado. As relações entre dados devem ser consistentes. Por exemplo nesta BD não devem existir dois alunos com o mesmo nº mecanográfico ou duas cadeiras com o mesmo código, e uma inscrição refere-se a alunos e cadeiras que existam na base de dados. 4

Exemplo de uma BD (cont.) Tabela{ ALUNO NumMec Nome Curso 798764544 João Pinto LCC 345673451 Carlos Semedo MIERSI 487563546 Maria Silva LBIO 452212348 Pedro Costa LMAT Registo (linha) Está em causa uma BD relacional, o tipo de BD mais comum e que iremos considerar nesta cadeira. Intuição preliminar: numa BD relacional a informação está organizada em tabelas, cada uma contendo um conjunto de registos (linhas), decomposto em vários campos (colunas). Campo (coluna) 5

Sistema de Gestão de (SGBD) SGBD: software que permite criar e manipular uma base de dados. Em inglês DBMS ( Database Management System ) Também designado por motor de base de dados ( database engine ). Um SGBD lida abstrái a forma como os dados estão estruturados e armazenados. Por constraste, num sistema tradicional de ficheiros: A estrutura de um ficheiro de dados está intrinsicamente espelhada nos programas que manipulam esses ficheiros. A alteração de estrutura dos ficheiro de dados obriga à alteração de todos os programas. 6

Aspectos essenciais de um SGBD Persistência e disponibilidade dos dados Uma BD é armazenada de forma persistente (durável) e está disponível para acesso em qualquer altura. Mutabilidade, atomicidade, consistência, concorrência O estado de uma BD (cjto. de dados contidos na BD) é mutável, i.e., pode ser alterado ao longo do tempo. Cada alteração ao estado deve ser logicamente atómica. O estado deve ser sempre consistente, de acordo com as regras definidas para a BD. Podem haver operações concorrentes (simultâneas) sobre os dados, sem prejuízo da consistência da BD. 7

Aspectos essenciais de um SGBD (cont.) Segurança Uma BD deve ser acedida de forma segura por exemplo mediante autenticação e suporte de diferentes níveis de acesso aos dados. Acessibilidade O acesso a BDs pode ser feito por software externo, de forma programática e através de uma rede. Administração O SGBD deve permitir a administração de BDs, de forma programática e/ou através de ferramentas específicas para o efeito. 8

Aplicações de BD modelo típico 3-tier u2lizador cliente apresentação dos dados rede/ cloud servidor lógica aplicacional DBMS BD dados 9

SGBD: esquemas e dados acesso externo SGBD Esquemas Dados Um SGDB permite a definição e manipulação de: Esquemas de base de dados, que descrevem como uma base de dados está estruturada, também chamados de meta-dados. Bases de dados = instância de esquemas. Um SGBD pode suportar BDs distintas com o mesmo esquema e a existência de vários esquemas distintos. 10

Como se fala com uma base de dados? acesso externo SGBD Esquemas Dados Do ponto de vista de acesso externo, um SGBD fala dois tipos de linguagem: DDL ( Data Definition Language ): para lidar com esquemas. DML ( Data Manipulation Language ): para lidar com os dados de uma BD. Neste cadeira iremos considerar BDs manipuladas usando a linguagem SQL (Structured Query Language) que cumpre estes dois papéis. 11

Um cheirinho de SQL ALUNO NumMec Nome Curso CREATE TABLE ALUNO ( NumMec INTEGER PRIMARY KEY NOT NULL, Nome VARCHAR(64) NOT NULL, Curso VARCHAR(20) NOT NULL ); SQL usada como DDL criação de tabela. 12

Um cheirinho de SQL (cont.) ALUNO NumMec Nome Curso 798764544 João Pinto LCC 345673451 Carlos Semedo MIERSI 487563546 Maria Silva LBIO 452212348 Pedro Costa LMAT INSERT INTO ALUNO(NumMec, Nome, Curso) VALUES(798764544, 'João Pinto', 'LCC'); INSERT INTO ALUNO(NumMec, Nome, Curso) VALUES(345673451, 'Carlos Semedo', 'MIERSI'); INSERT INTO ALUNO(NumMec, Nome, Curso) VALUES(487563546, 'Maria Silva', 'LBIO'); INSERT INTO ALUNO(NumMec, Nome, Curso) VALUES(452212348, 'Pedro Costa', 'LMAT'); SQL usada como DML, neste caso para inserção de registos. 13

Desenho e implementação de uma BD Análise Desenho Conceptual Requisitos Modelo Conceptual Independentes do SGBD Desenho Lógico Desenho Físico Modelo Lógico Modelo Físico Dependentes do SGBD O desenho e implementação de uma BD compreende várias fases e correspondentes níveis de modelação. 14

Desenho e implementação de uma BD (cont.) Modelo de Dados Conjunto de conceitos que descrevem a estrutura da BD em termos da relação entre dados, seu significado, e restrições. Tipos de modelo: Conceptual: descreve os conceitos a representar em uma BD de forma independente do SGBD. Lógico: descreve de forma lógica a implementação de uma BD num SGBD. Físico: descreve a organização física interna dos dados no SGBD. 15

Desenho e implementação de uma BD (cont.) Análise Compreensão do universo para a BD, resultando num conjunto de requisitos documentados. A derivação de requisitos pode passar por reuniões entre peritos sobre o universo em causa, entrevistas com potenciais utilizadores / clientes, etc. Desenho conceptual (ou modelação) Defininição de um modelo conceptual a partir dos requisitos. O modelo deve descrever as entidades da BD e a forma como se relacionam, de forma independente do SGBD. Durante a cadeira iremos considerar os modelos conceptuais Entidade-Relacionamento (ER) e o modelo Entidade- Relacionamento Estendido (EER). 16

Desenho e implementação de uma BD (cont.) Desenho lógico (ou implementação) Mapeamento do modelo de dados conceptual num modelo de dados lógico concreto. Implementação da BD usando um SGBD. Na cadeira iremos considerar o modelo relacional e a sua implementação em SQL. Desenho físico Mapear o modelo de dados lógico no modelo de dados físico interno ao SGBD, ex. em termos de parameterização do tipo de armazenamento a usar, optimização do seu uso tendo em conta padrões de acesso, operação em rede, redundância, 17