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



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

Modelo de Dados Relacional Restrições de um Banco de Dados Relacional

Comandos de Manipulação

SQL - Criação de Tabelas

Básico da Linguagem SQL. Definição de Esquemas em SQL. SQL(Structured Query Language)

Programação SQL. Introdução

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011

Banco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011

SQL DDL. Frederico D. Bortoloti

SQL: Definição de tabelas, Modificações à Base de Dados

Introdução à Manipulação de Dados

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:

SQL. Definição do Esquema da Base de Dados. Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática

Introdução ao SQL. Aécio Costa

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL

Banco de dados 1. Linguagem SQL DDL e DML. Professor: Victor Hugo L. Lopes

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais

Aula 6 BD1 Modelo Relacional. Profa. Elaine Faria UFU

Structured Query Language (SQL) Ambiente Simplificado de um SGBD

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre

UNIVERSIDADE FEDERAL DO MARANHÃO - UFMA. Banco de Dados II. Integridade. Carlos Eduardo Portela Serra de Castro

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

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

PHP INTEGRAÇÃO COM MYSQL PARTE 1

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos

4.6. SQL - Structured Query Language

Linguagem SQL. Comandos Básicos

SQL Básica. Andre Noel

A linguagem SQL

BANCO DE DADOS CONCEITOS BÁSICOS

SQL. Autor: Renata Viegas

Correção da 1a Prova de GBD1 2010/1. Profa. Sandra de Amo

Linguagem SQL Sub-linguagem DDL

Disciplina de Banco de Dados Parte V

Linguagem SQL (Parte II)

Prof.: Clayton Maciel Costa

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS

SQL (Structured Query Language)

SQL (Structured Query Language)

SQL (Structured Query Language)

Linguagem de Consulta - SQL

Comandos DDL. id_modulo = id_m odulo

Consistem num conjunto de apontadores para instâncias especificas de cada relação.

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)

Definida pelo American National Standard Institute (ANSI) em 1986


Correção da 1a Prova de GBD1 2009/2. Profa. Sandra de Amo

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr waltenomartins@yahoo.

Structured Query Language (SQL) Aula Prática

Curso PHP Aula 08. Bruno Falcão

1. Domínio dos Atributos

Bases de Dados 2005/2006. Aula 5

UNIVERSIDADE VEIGA DE ALMEIDA CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS BANCO DE DADOS

CICLO DE VIDA DE UM BD

O modelo de dados relacional e as restrições de um banco de dados relacional

Structured Query Language (SQL)

SQL (STRUCTUREDQUERY LANGUAGE)

Integridade dos Dados

BD SQL Server. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04

Banco de Dados. Módulo 7 - Modelo Relacional. Definição do Esquema Relacional em SQL. modulo07.prz 1 10/09/01

O que são Bancos de Dados?

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita:

SQL (Structured Query Language)

MODELO RELACIONAL - UFMA

Teste Exemplo Revisão da tentativa 1

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Um modelo de dados é a colecção de, pelo menos, 3 componentes:

Manipulação de Dados com SQL

Banco de Dados. Profª. Ana Leda

Principais Conceitos. Modelo Relacional representa o banco de dados como uma coleção de relações Tupla Atributos Relação Domínio

Aplicações - SQL. Banco de Dados: Teoria e Prática. André Santanchè e Luiz Celso Gomes Jr Instituto de Computação UNICAMP Agosto de 2013

SQL Structured Query Language

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II

Banco de dados. Linguagens de Banco de Dados II. Wedson Quintanilha da Silva -

MODELO RELACIONAL E RESTRIÇÕES DE INTEGRIDADE

SQL92 DDL( RIS, ACTUALIZAÇÕES E VISTAS) DML (QUERIES, SUBQUERIES,JUNÇÕES, E OPERAÇÕES SOBRE CONJUNTOS)

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho

Capitulo 2. Prof.º Espc. Fábio Margarito Martins de Barros - Tecnologia de banco de dados

SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável.

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

Modelo de Dados. Modelos Conceituais

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

Banco de Dados. Maurício Edgar Stivanello

AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES

SQL (STRUCTUREDQUERY LANGUAGE)

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

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

Exercícios de Lógica Exercícios de Fixação 08

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003

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

EXEMPLOS DE COMANDOS NO SQL SERVER

SQL (Tópicos) Structured Query Language

Núcleo de Pós Graduação Pitágoras

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

SQL. Prof. Márcio Bueno.

Transcrição:

Modelo Relacional Uma base de dados é uma colecção de uma ou mais relações com nomes distintos Uma relação é uma tabela com linhas e colunas Esquema da Relação Descreve as colunas da tabela Especifica o nome da relação o nome de cada campo (coluna ou atributo o domínio de de cada campo o nome conjunto de valores associados Ex: aluno( nome: string, idade: integer, login: string Teresa Gonçalves, 2004 IMD, 1 Teresa Gonçalves, 2004 IMD, 2 Instância da Relação Exemplo É um conjunto de tuplos ou registos cada tuplo tem os mesmo número de campos que o esquema da relação Pode ser vista como uma tabela onde, cada tuplo é uma linha e todas as linhas têm o mesmo número de campos Relação = Instância da Relação campos (atributos ou colunas id nome idade login 10000 João 18 joao@di 10050 Maria 22 maria@de 9999 Manuel 19 manuel@de 8999 Joana 19 joana@di nomes dos campos tuplos Teresa Gonçalves, 2004 IMD, 3 Teresa Gonçalves, 2004 IMD, 4

Características SQL - Structured Query Language Uma relação é um conjunto de tuplos únicos não existem duas linhas iguais a ordem de apresentação das linhas não é importante Restrições de domínio os valores que aparecem em cada coluna devem respeitar o domínio definido no esquema Definições Grau ou aridade = número de atributos Cardinalidade = número de tuplos Teresa Gonçalves, 2004 IMD, 5 Tabela = Relação DDL Data Definition Language Sub-conjunto do SQL que suporta a criação, remoção e modificação de tabelas Domínio dos atributos integer real char(n date Teresa Gonçalves, 2004 IMD, 6 DDL Tabelas Definição de uma tabela CREATE TABLE Ex: CREATE TABLE aluno ( nome: char(60, idade: integer, login: char(40 Teresa Gonçalves, 2004 IMD, 7 Inserção DDL Tuplos (1 INSERT Ex: INSERT INTO aluno (id,nome,idade,login VALUES (5667,'João',18,'joao@di' Pode-se omitir a lista de nomes de colunas, listando os valores pela ordem apropriada(aquela definida aquando da criação da tabela, mas é bom estilo explicitar os nomes Teresa Gonçalves, 2004 IMD, 8

Remoção DELETE DDL Tuplos (2 DELETE FROM aluno WHERE aluno.nome = 'João' Modificação UPDATE UPDATE aluno A SET A.idade = A.idade+1 WHERE A.nome = 'Maria' Restrições de integridade São condições (especificadas no esquema da base de dados que restringem os dados a guardar Tipo de restrições domínio do atributo chave chave estrangeira outras Teresa Gonçalves, 2004 IMD, 9 Teresa Gonçalves, 2004 IMD, 10 Restrição de chave DDL Chaves candidatas Chave candidata Indica um sub-conjunto mínimo de atributos de uma relação que constituem um identificador único de cada tuplo Chave primária É uma das chaves candidatas é escolhida como principal meio de identificação / referenciação do tuplo o SGBD gera mecanismos que, dada a sua chave primária, tornam a devolução do tuplo eficiente CREATE TABLE aluno ( nome: char(60, idade: integer, login: char(40, UNIQUE (nome,idade, PRIMARY KEY (id chave candidata chave primária Teresa Gonçalves, 2004 IMD, 11 Teresa Gonçalves, 2004 IMD, 12

Restrição de chave estrangeira Chave estrangeira a informação contida numa relação está ligada com informação contida noutra Ex: aluno( nome: string, idade: integer, login: string inscrição( nomed:string, data:date, id:integer se campo id na tabela inscrição refere os dados dum estudante id é uma chave estrangeira e refere estudante A chave estrangeira na relação que referencia tem de ser igual à chave primária na relação referenciada deve ter o mesmo número de colunas e o mesmo domínio Teresa Gonçalves, 2004 IMD, 13 cnome data id IFN 12-10-04 10000 IMD 10-10-04 10050 IMD 10-10-04 10000 IMD 30-09-04 9999 IFN 30-09-04 9999 inscrição (relação que referencia chave estrangeira Exemplo chave primária Teresa Gonçalves, 2004 IMD, 14 id nome idade login 10000 João 18 10050 Maria 22 9999 Manuel 19 8999 Joana 19 Podem existir alunos sem inscrição; Qualquer inscrição, deve referir um aluno existente joao@di maria@de manuel@de joana@di estudante (relação referenciada DDL Chaves estrangeiras Do modelo EA para Relacional CREATE TABLE inscricao ( cnome: char(60, data: date, PRIMARY KEY (cnome,id, FOREIGN KEY (id REFERENCES aluno; Teresa Gonçalves, 2004 IMD, 15 Uma base de dados desenhada no modelo Entidade-Associação pode ser representada no modelo Relacional Modelo Entidade-Associação Conjuntos-Entidade Conjuntos-Associação Restrições de cardinalidade e participação Modelo Relacional Tabelas Teresa Gonçalves, 2004 IMD, 16

Conjuntos-entidade (CE Um CE é transformado numa tabela: cada atributo do CE torna-se um atributo da tabela a chave do CE torna-se a chave da tabela idade aluno nome id login aluno(id, nome, idade, login CREATE TABLE aluno ( nome: char(60, idade: integer, login: char(40, PRIMARY KEY (id Teresa Gonçalves, 2004 IMD, 17 Conjuntos-associação (CA Um CA é transformado numa relação: os atributos da chave primária de cada CE que participa na associação tornam-se chave estrangeira da relação os atributos descritivos são atributos da relação o conjunto de atributos não descritivos são uma chave candidata Teresa Gonçalves, 2004 IMD, 18 Exemplo Combinar tabelas nome aluno idade inscrição numero disciplina id login data cnome inscricao(id, cnome, data CREATE TABLE inscricao ( data: date, cnome: char(60, PRIMARY KEY (cnome,id, FOREIGN KEY (id REFERENCES aluno; FOREIGN KEY (cnome REFERENCES disciplina; Numa associação AB vários-para-1, da entidade A para B, se existir uma participação total de A é possível combinar as tabelas AB e A numa única tabela: inclui-se a informação da tabela correspondente à associação AB na tabela correspondente à entidade A Teresa Gonçalves, 2004 IMD, 19 Teresa Gonçalves, 2004 IMD, 20

Exemplo dnome orçamento B departamento tem A docente docente(nome, gabinete, dnome CREATE TABLE docente ( gabinete: char(60, nome: char(60, dnome: char(60, PRIMARY KEY (nome, FOREIGN KEY (dnome REFERENCES departamento; gabinete nome Teresa Gonçalves, 2004 IMD, 21