Você está na página 1de 13

Banco de dados

Introdução
Modelos de Dados e o processo
criativo de um banco de dados

Modelo de
sistema
Modelo Conceitual
imaginado
(Modelo ER)
pelo cliente

Modelo Lógico
(Modelo Servidor
Relacional)

Modelo Físico
(Modelo
Relacional)
Modelo Relacional
• O Dr. E.F. Codd propôs o modelo relacional de
sistemas de bancos de dados em 1970.
• Baseado no modelo matemático de Conjuntos
• Ele é a base para o RDBMS (relational database
management system).
• O modelo relacional consiste nos seguintes itens:
– Conjunto de relações ou tabelas
– Conjunto de operadores para agir sobre as relações
– Integridade de dados para precisão e consistência
Definição de Banco de Dados
Relacional
• Um banco de dados relacional é um conjunto
de relações ou tabelas bidimensionais.
Banco
de Dados

Nome da Tabela: EMP Nome da Tabela: DEPT


EMPNO ENAME JOB DEPTNO DNAME LOC
DEPTNO 10 ACCOUNTING NEW YORK
7839 KING PRESIDENT 10 20 RESEARCH DALLAS
7698 BLAKE MANAGER 30 30 SALES CHICAGO
7782 CLARK MANAGER 10 40 OPERATIONS BOSTON
7566 JONES MANAGER 20
Relacionando Várias Tabelas
• Cada linha de dados de uma tabela é
identificada com exclusividade por uma chave
primária (PK).
• Você pode relacionar logicamente dados de
várias
Nome
EMPNO
tabelas
da Tabela:
ENAME
EMP usando as
JOB
chaves
Nome estrangeiras
da Tabela: DEPT
DEPTNO DNAME LOC
(FK).
DEPTNO
7839 KING PRESIDENT 10
10
20
ACCOUNTING
RESEARCH
NEW YORK
DALLAS
7698 BLAKE MANAGER 30 30 SALES CHICAGO
7782 CLARK MANAGER 10 40 OPERATIONS BOSTON
7566 JONES MANAGER 20

Chave primária Chave estrangeira Chave primária


Terminologia de Banco de Dados
2 3
Relacional 4
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
6
------------- ------------ --------------------- -------- ---------------- ----------- -------------- -----------
7839 KING PRESIDENT 17-NOV-81 5000 10
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7844 TURNER SALESMAN 7698 08-SEP-81 1500 50 30
7900 JAMES CLERK 7698 03-DEC-81 950 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7369 SMITH CLERK 7902 17-DEC-80 800 20
7788 SCOTT ANALYST 7566 09-DEC-82 3000 20
7876 ADAMS CLERK 7788 12-JAN-83 1100 20
1 7934 MILLER CLERK 7782 23-JAN-82 1300 10
Normalização
• Parte integrante da pesquisa realizada por
Edgard F. Codd quando criou o Modelo
Relacional
• Cria o conceito do valor nulo (NULL), que
significa ausência de informação
• As relações (tabelas) são classificadas de
acordo com o grau crescente de simplicidade
em um processo denominado Normalização
Normalização
Tabela Projeto Não Normalizada
CodProj Tipo Descrição Empregado
CodEmp Nome Categ Salário DataIni TempoAloc
LS001 Novo Sist. 2146 João A1 4000 1-1-1 24
Desenv Estoque 3145 Silvio A2 4000 2-10-1 24
6126 José B1 3200 3-10-2 18
1214 Carlos A2 4000 4-10-2 18
8191 Mario A1 4000 1-11-2 12
PAG02 Manut. Sist. RH 8191 Mario A1 4000 1-5-3 12
4112 João A2 4000 4-1-1 24
6126 José B1 3200 1-11-2 12

Modelo de Dados Normalizado

Projeto (CodProj, Tipo, Descrição)


ProjEmp (CodProj, CodEmp, DataIni, TempoAloc)
Empregado(CodEmp, Nome, Categ)
Categoria(Categ, Salário)
Linguagem SQL
• Structured Query Language
– Desenvolvida nos laboratórios da IBM em 1970
– Linguagem padrão de acesso a bancos de dados
relacionais
– Tornou-se padrão ANSI/ISO em 1986
• Atualmente na versão SQL:2011
– Implementa operadores da álgebra relacional
• Pos sua vez, a álgebra relacional contém conjunto de
operadores baseado no modelo matemático de
Conjuntos
Instruções SQL
SELECT
INSERT
UPDATE DML (Data Manipulation Language)
DELETE
MERGE

CREATE
ALTER DDL (Data Definition Language)
DROP
RENAME
TRUNCATE

COMMIT DTL (Data Transaction Language)


ROLLBACK

GRANT DCL (Data Control Language)


REVOKE
Sistema de Banco de Dados

Tabelas de Dicionário
usuários de dados
Comunicando-se com Usando o SQL
A instrução SQL
é informada A instrução é enviada
SQL> SELECT loc para o banco de dados
2 FROM dept;

Banco de
Dados

Os dados são
exibidos
LOC
-------------
NEW YORK
DALLAS
CHICAGO
BOSTON
Um exemplo
REGIONS
REGION_ID (PK)
REGION_NAME

JOBS
COUNTRIES JOB_ID (PK)
COUNTRY_ID (PK) JOB_TITLE
COUNTRY_NAME MIN_SALARY JOB_HISTORY
REGION_ID (FK) MAX_SALARY EMPLOYEE_ID (PK)
START_DATE (PK)
END_DATE
JOB_ID (FK)
LOCATIONS EMPLOYEES DEPARTMENT_ID (FK)
LOCATION_ID (PK) EMPLOYEE_ID (PK)
STREET_ADDRESS FIRST_NAME
POSTAL_CODE LAST_NAME
CITY EMAIL
STATE_PROVINCE PHONE_NUMBER
COUNTRY_ID (FK) HIRE_DATE
JOB_ID (FK)
SALARY
COMMISION_PCT
DEPARTMENTS MANAGER_ID (FK)
DEPARTMENT_ID (PK) DEPARTMENT_ID (FK)
DEPARTMENT_NAME
MANAGER_ID
LOCATION_ID (FK)

Você também pode gostar