Buscar

BD - Aula01 - Conceitos Básicos

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Conceitos Básicos de 
Banco de Dados
Prof. Rogério Vassoler
Conceitos Básicos
O que é Dado?
Qualquer símbolo ou conjunto de símbolos.
O que é Informação? 
“Informações são dados que foram organizados e comunicados” (Castells)
Dados úteis, contextualizados.
	
Introdução
Dados registrados necessitam ser recuperados no futuro;
Buscar informações de forma rápida;
Para que os dados passem pelo processo de transformação em informações úteis é preciso alguma forma de processamento;
A computação agilizou o processo de registro, transformação e busca das informações. 	
Nome: Ana
Endereço : Av. Sete
Função: Medica
Surgimento dos Bancos de Dados
Banco de dados surge com uma iniciativa de organização dos dados presentes nos arquivos;
Bancos de dados compartilham grande volume de informações;
Os programas passam a ter acesso aos dados de maneira uniforme.
Histórico
Fim da década 60
Primeiros produtos de banco de dados hierárquicos
1969-1970
Criação do modelo relacional
Década 70 
Criação do modelo SQL (Structured Query Language, ou Linguagem de Consulta Estruturada)
Produtos de BD no modelo de rede
Pesquisas e desenvolvimento de produtos relacionais
1980-1983
Primeiros produtos relacionais
1986-1987
SQL definido como padrão ANSI (American National Standards Institute em 1986 e ISO (International Organization for Standardization) em 1987.
O que é Banco de Dados
“Banco de dados é uma coleção de dados relacionados” (Elmasri &Navathe)
“Um banco de dados é projetado, construído e povoado com dados que possuem um objetivo específico. Ele possui um grupo provável de usuários e aplicações preconcebidas, nas quais estes usuários estão interessados” (Elmasri &Navathe)
“Um banco de dados é uma coleção de dados persistentes utilizados pelos sistemas de aplicações de uma determinada 'empresa' ” (Date)
O que é Banco de Dados
Mecanismo de armazenamento de dados;
Conjunto de informações com estrutura regular;
Banco de dados não relacionais
Arquivos estruturados
Banco de dados relacionais
Dados organizados em tabelas;
Tabelas podem se relacionar com outras tabelas;
Menor espaço de armazenamento;
Maior velocidade de acesso aos dados;
Padrão mundialmente utilizado.
Bancos de Dados Relacionais
• Bancos de dados
Ferramentas que permitem o armazenamento e manipulação de dados organizados em forma de tabelas;
• Tabelas
Forma de organização de dados formada por linhas e colunas;
• Colunas
Campos que formam um registro;
• Linhas
Registros ou tuplas.
Banco de Dados
TabelaPRODUTOS
PRODUTO
PREÇO
TV
1000
DVD Player
290
BlurayPlayer
490
Tabela CLIENTES
NOME
IDADE
ESTADO
Maria
25
BA
Eduarda
30
SP
João
35
MG
Tabelas
 10
 1997
 James Cameron
 Titanic
 75
 2
 1996
 Jerry Maguire
 61
 4
 1986
 Platoon
 57
 6
 1994
 Robert Zemeckis
 Forrest Gump
 50
 0
 1999
 John McTiernan
 Thomas Crown
 20
 1
 1999
 Andy Washowski
 Matrix
 17
 5
 1999
 Sam Mendes
 Beleza Americana
 12
 0
 1999
 John Woo
 Missão Impossível 2
 11
 7
 1996
 Anthony Minghella
 O Paciente Inglês
 2
 Oscar
 Ano
 Diretor
 Filme
 Codigo
Colunas
Linhas
FILMES
Bancos de Dados Relacionais
• Visões
Consultas SQL a dados das tabelas do banco sem armazená-los;
• Índices
Estruturas que gerenciam a ordenação de valores dos campos informados para melhorar a performance de processamento destes campos.
SGBD (Conceito)
Sistema de Gerenciamento de Banco de dados (SGBD) é uma coleção de dados relacionados e um conjunto de programas para acessá-los permitindo ao usuário criar e manter o banco de dados.
SGBDs
• SGBD
Sistema Gerenciador de Banco de Dados;
DBMS: Database Management System;
SGBD não é um banco de dados, mas sim um complemento;
SGBD é um grupo de programas para interação com os dados.
Sistema de Banco de Dados
Banco de
Dados
SGBD
Sistema
Sistema
Usuário
Funções do SGBD
Definição de Dados
Manipulação de Dados
Segurança e Integridade
Utilitários para Inclusão, Recuperação e Reorganização
Controle de Concorrência
Catálogo/Otimizador
Desempenho
Usuários
Administradores de Dados
Administrador de Banco de Dados 
Usuários Finais
Analistas de Sistemas e Programadores
Usuários
Administradores de Dados (DA ou AD)
Exige conhecimentos específicos do ramo de negócio;
Interagem com os usuários para desenvolver o modelo de dados.
Administrador de Banco de Dados (DBA)
Exige conhecimentos técnicos específicos do SGBD;
O DBA geralmente é um profissional de ciência da computação.
Atribuições do DA e DBA
Projetar a estrutura do BD, ou seja, o conjunto de objetos do BD (nomes de tabelas, nomes dos campos, tamanhos dos campos, valores válidos, relacionamentos entre as tabelas, etc.);
Estabelecer que usuários podem acessar quais informações;
Criar e manter os objetos do BD;
Fazer cargas de dados;
Gerenciar inclusão/recuperação de dados;
Monitorar o desempenho do SGBD.
Introdução ao SQL
SQL (Structured Query Language)
Linguagem Estruturada de Consulta
Formada pelo conjunto das linguagens:
DDL (Data Definition Language): Linguagem de Definição de Dados
DML (Data Manipulation Language): Linguagem de Manipulação de Dados
DQL (Data Query Language): Linguagem de Consulta de Dados
DCL (Data Control Language): Linguagem de Controle de Dados
DTL (Data Transaction Language): Linguagem de Transação de Dados
DDL (Data Definition Language)
Linguagem de Definição de Dados
CREATE: Cria uma estrutura
ALTER: Altera uma estrutura
DROP: Exclui uma estrutura
DML (Data Manipulation Language)
Linguagem de Manipulação de Dados
INSERT: Insere dados
UPDATE: Altera dados
DELETE: Exclui dados
DQL (Data Query Language)
Linguagem de Consulta de Dados
SELECT: Retorna dados
Ordenação de dados
Agrupamento de dados
Funções aritméticas
Filtros de seleção
DCL (Data Control Language)
Linguagem de Controle de Dados
GRANT: Habilita acesso a dados e operações
REVOKE: Revoga acesso a dados e operações
DTL (Data Transaction Language)
Linguagem de Transação de Dados
START TRANSACTION: Inicia a transação
COMMIT: Concretiza a transação
ROLLBACK: Anula a transação
Vantagens na utilização de BD
Persistência das estruturas dos dados e procedimentos;
Controle de redundâncias/consistência;
Compartilhamento;
Restrição de segurança;
Suporte a transação;
Utilização de regras de restrição de integridade;
Independência de dados.
Vantagens na utilização de BD
Capacidade de recuperação e cópias;
Múltiplas interfaces para usuários;
Aderência a Padrões;
Aumento de desempenho;
Independência de dados.
Conceitos Importantes
Redundância
Ocorre quando um mesmo dado é armazenado em mais de uma área do banco de dados.
Consistência/Inconsistência
A consistência indica a utilização de dados que não conflitam com outros.
Conceitos Importantes
Integridade / Falta de Integridade
A integridade diz respeito ao nível de confiança das informações do banco de dados;
Diz respeito a credibilidade das informações e à lógica das informações;
Regras de restrição de integridade configuraram um banco de dados para ser alimentado por informações com características lógicas específicas, diminuindo a probabilidade de falta de integridade no banco de dados.
Conceitos Importantes
Restrição de Integridade
A restrição de Integridade garante a alimentação do banco de dados com informações verdadeiras ou válidas.
São regras que fazem com que os dados inseridos no banco tenham menor probabilidade de erro ou seja, o banco se alimenta de dados de maior veracidade ou utilidade para os usuários.
Conceitos Importantes
Restrição de Segurança
A restrição de segurança diz respeito a permissão de acesso, por determinados usuários, a determinadas informações contidas no banco. 
Ela permite a atribuição de previlégios, que autorizam e disponibilizam ao usuário final, somente as informações que o mesmo necessita ou tem direito de acesso. 
Principais Bancos de dados
MySQL
PostgreSQL
Firebird
Oracle
SQL
Server
DB2
Tipos de Dados
Numérico 
Inteiro:
INTEGER (4 bytes), SMALLINT (2 bytes), TINIT (1 byte)
Real:
FLOAT e DOUBLE PRECISION
	Formatado:
DECIMAL(i,j)
String de Caracteres
Fixo:
CHAR(n)
Variável:
VARCHAR(n)
Tipos de Dados
Data:
DATE(AAAA-MM-DD)
Hora:
TIME(HH:MM:SS)
Flag:
BIT(n)
BIT varying(n)
Exemplos (Definição de Dados)
CREATE TABLE
Utilizado para especificar uma nova tabela, informando um nome, seus atributos e restrições de integridade.
Cada atributo recebe um nome, tipo de dados e restrições.
Exemplos (Definição de Dados)
CREATE TABLE empregado 
		(matricula		INT,
 nomeemp		VARCHAR(60),
		endereco		VARCHAR(100),
		depart			INT,
		salario			DECIMAL(10,2)); 
Exemplos (Definição de Dados)
Integridade de domínio (opções da definição dos atributos)
	NULL – permite valores nulos;
	NOT NULL – não permite nulos;
	DEFAULT – declara valor default para o atributo;
	CHECK – limita/restringe os valores;
	UNSIGNED – não permite números negativos;
	AUTO_INCREMENT – geração de códigos automáticos.
Exemplos (Definição de Dados)
CREATE TABLE empregado 
		(cod	 INT UNSIGNED NOT NULL AUTO_INCREMENT,
 nomeemp	 VARCHAR(60) NOT NULL,
		endereco	 VARCHAR(100),
	cod	depart INT NOT NULL,
		salario	 DECIMAL(10,2) NOT NULL
				 CHECK(salario>648,00)); 
Exemplos (Definição de Dados)
ALTER TABLE
Adicionar ou retirar atributos
Alterar definição de atributo
Adicionar ou retirar restrições
Exemplos (Definição de Dados)
ALTER TABLE
Adicionar ou retirar atributos
	ALTER TABLE tabela ADD atributo VARCHAR(15);
	ALTER TABLE tabela DROP atributo {RESTRICT/CASCADE};
	CASCADE - remover o atributo e todas as restrições e visões que se referenciam a ele 
 
	RESTRICT- remover apenas se nenhuma restrição ou visão se referir ao atributo
Exemplos (Definição de Dados)
ALTER TABLE
Adicionar ou retirar atributos
	ALTER TABLE Empregado ADD atividade VARCHAR(15) NOT NULL;
	ALTER TABLE Empregado DROP atividade CASCADE;
	
Questões 
Porque banco de dados é caracterizado como uma coleção de dados persistentes ?
Quais as vantagens de usar um SGBD ?
Dê um exemplo de restrição de integridade.
Defina transação.
Quais os usuários de um SGBD ?
Questões 
Porque banco de dados é caracterizado como uma coleção de dados persistentes ?
A persistência de dados, na computação, refere-se ao armazenamento não-volátil de dados, por exemplo, o armazenamento em um dispositivo físico como um disco rígido. Quando se grava uma informação em um banco de dados, por exemplo, o dado está sendo "eternizado", ou seja, deixa de ficar volátil na memória RAM e passa a ser escrito num dispositivo que armazena a informação de modo que ela não desapareça facilmente.
Questões 
Quais as vantagens de usar um SGBD ?
Melhorar a manipulação de dados; garantir a segurança e integridade de dados; sustentar a recuperação de dados; controlar a concorrência; melhorar desempenho.
Questões 
Dê um exemplo de restrição de integridade.
Restrições de integridade são usadas para garantir a exatidão e a consistência dos dados em um Banco de dados relacional. Exemplos: 
Integridade de Domínio: O domínio indica os possíveis valores de um atributo. A integridade de domínio verifica se os dados são do tipo permitido (alfanumérico, numérico, etc), tamanho do campo, se ele pode ser nulo ou não. Por exemplo, é possível definir que um atributo "idade" de um funcionário é sempre um valor inteiro positivo.
Restrição de Chave: Impede que uma chave primária se repita. Um campo chave primária diferencia de forma única as tuplas (linhas) de uma relação (tabela).
Restrição de Entidade: Impede que uma chave primária receba como valor NULL (nulo).
Integridade de vazio: Verifica se um campo pode ou não receber valor NULL. Sub-item da integridade de domínio.
Questões 
Defina transação.
Em banco de dados, uma transação é uma sequência de operações num SGBD que são tratadas como um bloco único e indivisível durante uma recuperação de falhas e também prover isolamento entre acessos concorrentes na mesma massa de dados.
Questões 
Quais os usuários de um SGBD ?
Administradores de Dados
Administrador de Banco de Dados 
Usuários Finais
Analistas de Sistemas e Programadores
Questões 
Definir as seguintes tabelas:
Empregado(cod, nome, rua, bairro, telefone, datanasc, dataadm, funcao, coddepart, salario, comissao)
Obrigado e até a próxima aula

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais