Sistema Gerenciador de Banco de Dados SGBD

Slides:



Advertisements
Apresentações semelhantes
Um pouco mais de cardinalidade e Relacionamentos
Advertisements

Ana Paula B. Barboza Ivana Xavier Rodrigues
O Comando DROP INDEX Para eliminar um índice definido sobre uma tabela, utilize: Drop Index on ; Ex: No Access: Drop Index X on.
Banco de Dados Prof. Antonio.
Banco de Dados I Aula 20.
Evolução dos SGBD’s (2ª Parte).
MODELO RELACIONAL Transparências baseadas no capítulo 3 do livro de KORTH e SILBERCHATZ e capítulo 7 do livro de ELMASRI e NAVATHE Juliana Amaral e Rodrigo.
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
O Modelo E-R Definição: Características
Funcionalidades de um SGBD
Prof.: Bruno Rafael de Oliveira Rodrigues
Banco de Dados Prof.: Bruno Rafael de Oliveira Rodrigues.
Prof.: Bruno Rafael de Oliveira Rodrigues
SISTEMAS DE INFORMAÇÃO
Maurício Edgar Stivanello
SGBD.
Sistema Gerenciador de Banco de Dados SGBD
Transformando o Modelo E-R no Modelo Relacional
Introdução a Bancos de Dados
Restrições de Integridade
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
Profa. Aline Vasconcelos
Introdução à Engenharia da Computação
Oficina sobre banco de dados
Conceitos Básicos Dado: fato do mundo real que está registrado e possui um significado implícito no contexto de um domínio de aplicação Exemplos: endereço,
INSTITUTO FEDERAL FARROUPILHA
FRB - Maio 2002MCS9–1 Regras (Restrições) de Integridade Sistemas comerciais relacionais são muito finos de restrições para garantir a qualidade dos dados.
Linguagem de Banco de Dados - SQL
Bancos de Dados – SQL – parte 1
FORMAS DE REPRESENTAÇÃO QUE SERVEM PARA DESCREVER AS ESTRUTURAS DAS INFORMAÇÕES CONTIDAS EM UM BD. Modelos de Dados.
Banco de dados Profª Kelly Medeiros.
Administração de Sistemas de Informação Banco de Dados
SQL Server 2012 Introdução a Modelagem de Dados
Introdução a Banco de Dados com exercícios de aplicação
Banco de Dados Aplicado ao Desenvolvimento de Software - BDD
Tipos de Linguagens do Banco de Dados
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
Desenvolvendo um script SQL
Introdução a Banco de dados
Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo  Os três níveis da arquitetura  Mapeamentos  Arquitetura cliente-servidor.
Banco de dados.
Linguagem de Definição de Dados
Criação de Tabelas. CREATE TABLE nome_da_tabela ( >>. >> ) Ex.: SQL SERVER 2008 CREATE TABLE pessoa ( CPF VARCHAR(11) NOT NULL, NOME VARCHAR(100) NOT.
Baseado no material do Professor Raul Paradeda
Definições de Esquemas, Restrições básicas e buscas
Banco de Dados Aplicado ao Desenvolvimento de Software
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Bancos de Dados.
Contatos Gladimir Catarino
Banco de Dados I I Comandos SQL
Banco de dados 1 Modelagem de Dados Utilizando MER
Fundamentos de Banco de Dados Fundamentos de Banco de Dados Prof. Gale 2º. Semestre 2008.
SQL (Structured Query Language)
1 Introdução à Manipulação de Dados SQL – Structured Query Language  Tabela = Relação  DDL – Data Definition Language  Sub-conjunto do SQL que suporta.
Objetos em Bancos de Dados Relacionais Alcides Calsavara.
Profa. Ana Karina Barbosa Abril/2008
Professor Me. Jeferson Bussula Pinheiro.
Daniel Paulo Introdução Neste capítulo trataremos a relação entre tabelas e FILEGROUPS, bem como a alocação interna de dados.
UCSal – Bacharelado em Informática
Banco de dados e tipos de programação
Introdução a Bancos de Dados (BD’s)
B ANCO DE DADOS Introdução ABTécnico. C ONCEITO É uma coleção de dados interrelacionados, representando informações sobre um domínio específico. Exemplos:
Plano de Ensino Conceitos e Características Tipos de Banco de Dados
Linguagem de definição de dados - SQL
Banco de Dados SQL (Structured Query Language) Hayslan Nicolas Colicheski Bucarth – IFRO / 2015 –
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
Modelo Relacional Introduzido por Ted Codd, da IBM Research, em Utiliza o conceito de relação matemática. Possui base teórica na teoria dos conjuntos.
Prática de Banco de Dados Créditos: Prof. Jefferson Silva Adaptações: Prof. Nécio de Lima Veras.
Programação para Internet Aula 11 SQL (Introdução a linguagem, comandos de modificação: Create, Drop, Alter, Insert, Delete, Update)
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Sistema Gerenciador de Banco de Dados SGBD Alcides Calsavara

Objetivos Mostrar as vantagens da abordagem baseada em SGBD para a construção de sistemas de informações sobre a abordagem baseada em programas que fazem acesso direto a arquivos. Mostrar as principais características de um SGBD.

Método de apresentação Estudo de caso: sistema de informações para o controle de salários de funcionários de uma empresa.

Aspectos de SGBD Bancos de dados hierárquicos e de rede: difícil manutenção Teoria de relações (Matemática) Bancos de dados relacionais Independência de linguagem de programação Independência de fornecedor de SGBD DDL: Data Definition Language DML: Data Manipulation Language (ex. SQL) CL: Computational Language Mecanismo geral para consulta, criação, modificação e remoção de dados

Aspectos Integridade Transação Controle de concorrência Acesso remoto Índices Segurança Visões Normalização Modelagem de dados (MER) e objetos (UML)

Aspectos de SGBD Gatilhos (triggers) Procedimentos armazenados (stored procedures) Distribuição Modelo Cliente/Servidor Internet/Intranet: CGI, ASP, PHP

Vantagens de SGBD recuperação em caso de falha compartilhamento entre usuários compartilhamento entre aplicações segurança integridade extensibilidade distribuição de dados

Conceitos de BD relacionais Partes de um SGBD: dados que são apresentados como tabelas operadores para manipulação de tabelas regras de integridade para as tabelas

Estrutura lógica de um SGBD coleção de tabelas cada tabela tem um determinado número de colunas e um número qualquer de linhas colunas são chamadas de atributos linhas são chamadas de tuplas cada atributo tem um domínio: conjunto de valores legais

Operadores de SGBD SQL: SET-ORIENTED SELECT ... FROM ... WHERE ... CREATE TABLE ... INSERT ROW ... INTO TABLE ... DELETE ROW ... FROM TABLE ... SET-ORIENTED

Integridade em SGBD Integridade de entidade: cada tabela tem exatamente uma chave-primária chave-primária: combinação de um ou mais atributos cujo valor identifica unicamente cada linha em uma tabela

Integridade em SGBD (cont.) Integridade referencial: cada chave estrangeira deve ser consistente com sua correspondente chave primária chave estrangeira: é uma chave primária de uma tabela embutida em outra (ou na mesma) tabela

Formas normais primeira: nenhum atributo contém um grupo de valores segunda: cada tupla deve ter uma chave-primária terceira: cada atributo depende diretamente da chave-primária

Definição de uma tabela

Criação de uma tabela em SQL CREATE TABLE Pessoa ( rg integer not null, nome char(30) not null, endereço char(50) PRIMARY KEY (rg) );

Associação entre tabelas Tipos de associação: muitos para muitos (ex: em uma empresa trabalham muitas pessoas e uma pessoa trabalha em muitas empresas) um para muitos (ex: uma pessoa trabalha somente em uma empresa) um para um (ex: uma pessoa possui somente outra como cônjuge, e vice-versa)

Associação muitos-para-muitos: definição da tabela associativa

Associação muitos-para-muitos: criação da tabela associativa CREATE TABLE Trabalha-para ( empresa-cnpj Integer not null, pessoa-rg Integer not null, salario double, PRIMARY KEY (empresa-cnpj, pessoa-rg), FOREIGN KEY (empresa-cnpj) REFERENCES Empresa, FOREIGN KEY (pessoa-rg) REFERENCES Pessoa );

Associação binária um-para-muitos: tabela

Estudo de Caso Sistema de controle de recursos humanos Funcionários Dependentes Salários

Informações Funcionário número de matrícula nome data de nascimento idade data de contratação código de nível salarial modo de pagamento número de horas trabalhadas no mês salário do mês

Informações Dependente código do dependente número de matrícula do funcionário nome grau de parentesco data de nascimento idade

Informações Nível Salarial código de nível salarial valor mensal valor da hora

Programas Cadastro de pessoal em modo texto Cadastro de pessoal em modo gráfico Cadastro de níveis salariais em modo texto Cadastro de níveis salarias em modo gráfico Gerador de folha de pagamento Facilitador de consulta pelo funcionário

Requisitos O número de matrícula de um funcionário é um número inteiro não-negativo, com valor não superior a 10.000. O código de dependente é um número inteiro não-negativo, com valor não superior a 100. O código de nível é uma letra de A a Z.

Requisitos Não podem haver dois funcionários com o mesmo número de matrícula. Não podem haver dois dependentes do mesmo funcionário com o mesmo código de dependente. Não podem haver dois níveis salariais com o mesmo código de nível.

Requisitos Tanto o nome de um funcionário quanto o nome de um dependente devem ser uma sequência de caracteres na qual pode-se identificar pelo menos duas palavras. O grau de parentesco de um dependente pode ser CONJUGE ou FILHO.

Requisitos Todas as informações de data devem ser compostas por um ano (um valor inteiro não-negativo não superior a 10.000), um mês (um valor inteiro entre 1 e 12) e um dia (um valor inteiro entre 1 e 28, 29, 30 ou 31, de acordo com o mês e ano).

Requisitos Tanto a data de nascimento de um funcionário quanto a data de nascimento de um dependente não pode ser anterior a primeiro de janeiro de 1900. A data de contratação de um funcionário não pode ser anterior a 17 de abril de 1981 (data de criação da empresa).

Requisitos Um dependente que tem grau de parentesco como FILHO de um funcionário não pode ter data de nascimento anterior à data de nascimento do funcionário mais 10 anos. Tanto a idade de um funcionário como a idade de um dependente são determinados em função da data de nascimento e da data atual.

Requisitos Um dependente somente pode armazenar um número de matrícula de funcionário que de fato corresponda a um funcionário da empresa. Quando um funcionário deixa a empresa, seu registro deve ser removido do sistema de informações, juntamente com todos os registros de dependentes correspondentes.

Requisitos Um funcionário somente pode armazenar um código de nível salarial que de fato corresponda a um nível salarial definido para a empresa. Quando um nível salarial deixa de existir, todos os funcionários que por acaso sejam daquele nível precisam ser atualizados com um nível salarial existente.

Requisitos O valor mensal correspondente a um nível salarial deve ser um valor real não negativo e não superior a R$15.000,00. O valor da hora correspondente a um nível salarial deve ser um valor real não negativo e não superior a R$100,00.

Requisitos O modo de pagamento de um funcionário deve ser MENSALISTA ou HORISTA. O número de horas trabalhadas no mês para um funcionário só tem sentido se seu modo de pagamento for HORISTA. O número de horas trabalhadas no mês para um funcionário deve ser um valor inteiro entre 0 e 160.

Requisitos O salário do mês de um funcionário deve ser calculado em função de seu respectivo modo de pagamento, nível salarial e número de horas trabalhadas no mês, se for HORISTA, e do número de dependentes. O salário do mês calculado para um funcionário deve ser um valor real não negativo e não superior a R$20.000,00.