You are on page 1of 26

BANCO DE DADOS I

Prof. Roberto Tikao Tsukamoto Jnior

Cceres, 8 de agosto de 2012.

Referncias Bibliogrficas da aula de hoje ELMASRI, Ramez, NAVATHE, Shamkant B. Sistemas de banco de dados. 6 ed. So Paulo: Pearson Addison Esley, 2011. CAPTULO 1. SETZER, Valdemar W. Dado, informao, conhecimento e competncia. Disponvel em: http://www.ime.usp.br/~vwsetzer/dado-infoFolha.html . Acesso em: 08/08/2012.

Dados e Informao DADO: uma representao simblica (isto , por meio de smbolos) quantificada ou quantificvel, que podem ser armazenadas for a da mente humana. INFORMAO: compreenso dos dados, atribuindo-lhe algum significado.

Banco de Dados uma coleo de dados organizados, estruturados e inter-relacionados logicamente. um sistema computadorizado cuja finalidade geral armazenar informaes e permitir que os usurios busquem e atualizem essas informaes quando as solicitar. (Date, 2004)

Propriedades de um Banco de Dados Representa algum aspecto do mundo real (minimundo ou Universo de discurso). uma coleo logicamente coerente de dados com algum significado inerente. Uma variedade aleatrio de dados no pode ser corretamente chamada de banco de dados. Ele projetado, contrudo e populado com dados para uma finalidade especfica.

Sistema de Gerenciamento de Banco de Dados O Sistema de Gerencimento de Banco de Dados SGBD (Database Management System DBMS), uma coleo de programas que permite aos usurios criar e manter um banco de dados. O SGBD um sistema de software de uso geral que facilita o processo de definio, construo, manipulao e compartilhamento de banco de dados entre diversos usurios e aplicaes.

SGBD: Termo Estritamente falando, o termo banco de dados deve ser aplicado apenas aos dados, enquanto o termo Sistema de Gerenciamento de Banco de Dados deve ser aplicado ao software com a capacidade de manipular bancos de dados de forma geral. Porm, comum misturar os dois conceitos.

Exemplos de SGBD

Banco de Dados: componentes principais Dados Hardware Software Usurios

BD: Componentes Hardware


Computadores Volumes de armazenamento: discos rgidos
Discos para dados; Disco para S.O.

Armazenamento distribudos.

10

BD: Componentes Software


Entre o banco de dados fsico e os usurios existe um camada de software: Gerenciador de Bando de Dados ou Sistema de Gerenciamento de Banco de Dados SGBD. Isola o usurio de detalhes do nvel do hardware.

11

BD: Componentes Usurios


Administrador de Banco de Dados (Database Administrator DBA). Projetistas de Banco de Dados. Usurios finais. Analistas de sistemas. Programadores de aplicaes.

12

CARACTERSTICAS (1)
Dados so persistentes. Densidade: no h necessidade de arquivos de papel; Velocidade: rapidez maior que os humanos; Menos trabalho (montono): o acesso cotidiano ao dados realizado pela mquina; Atualidade: informaes precisas e atualizadas em tempo real; Proteo: contra perda e acesso no autorizado.

13

CARACTERSTICAS (2) Natureza de autodescrio de um sistema de banco de dados. Isolamento entre programas e dados, e abstrao de dados. Suporte de mltiplas vises de dados. Compartilhamento de dados e processamento de transao multiusurio.

14

Vantagens de usar a abordagem SGBD Os dados podem ser compartilhados. A redundncia pode se reduzida A inconsistncia pode ser evitada O suporte a transaes pode ser fornecido. A integrida pode ser mantida. A segurana pode ser reforada. Requisitos contraditrios podem ser equilibrados Os padres podem ser impostos. BACKUP e restaurao.
15

Exemplo de banco de dados Alunos de SI (Tabela Alunos):


Matricula
20110101 20110102 20110103

Nome
Ricardo da Silva Alfredo Antunes Jos de Souza

CPF

RG

Telefone
3223-0000 3222-0000 3225-0000

e-mail
ricardo@fa pan.edu.br alfredo@fa pan.edu.br jose@fapan .edu.br

111.111.111- 1111111 11 222.222.222 222222 -22 333.333.333 333333 -33

Notas dos alunos (Tabela Notas):


Matricula 20110101 20110102 20110103 Nota1 3 2 3 Nota2 3 2 2 Nota3 2 1 2 Nota4 1 1 0

Padro SQL SQL: Structured Query Language


Foi originalmente chamada de SEQUEL (Structured English Query Language) e desenvolvida pela IBM como parte do System R no incio dos anos 70. Padronizao em 1986 pelo ANSI (American National Standards Institute) e em 1987 pela ISO (International Organization for Standardization).

Padro SQL

baseada no Modelo Relacional de Dados; No modelo relacional os dados so percebidos pelo usurio como tabelas (e nada alm de tabelas) (DATE, 2004). Assim:
Dados esto armazenados em tabelas (RELAO) Colunas: campos (ATRIBUTO) Linhas: registros do arquivo (TUPLA)

Padro SQL: Subconjunto de Linguagens (1) DML - Linguagem de Manipulao de Dados: utilizada para realizar incluses, consultas, excluses e alteraes de dados presentes em registros (Insert, Select, Update e Delete). DDL - Linguagem de Definio de Dados: permite ao utilizador definir tabelas novas e elementos associados (Create, Drop e Alter).

Padro SQL: Subconjunto de Linguagens (2) DCL - Linguagem de Controle de Dados: controla os aspectos de autorizao de dados e licenas de usurios para controlar quem tem acesso para ver ou manipular dados dentro do banco de dados (Grant e Revoke). DTL - Linguagem de Transao de Dados: utilizada em transaes do BD (Begin work, Commit e Rollback)

Padro SQL: Subconjunto de Linguagens (3) DQL - Linguagem de Consulta de Dados: Realiza consultas (query). (SELECT)

Modelo Relacional O conceito foi criado pelo Matemtico Edgar Frank Codd em 1970, sendo descrito no artigo "Relational Model of Data for Large Shared Data Banks" (Modelo de dados relacional para grandes bancos de dados compartilhados). O termo relao um termo matemtico para designar tabela.

MySQL Desenvolvedor: Oracle Corporation Sistema Operacional: Multiplataforma Gnero: SGBD Licena : GPL e Licena comercial Pgina oficial: www.mysql.com

Principais operaes
Selecionar / Buscar (SELECT)
SELECT * FROM Alunos

Alterar (UPDATE)
UPDATE Alunos SET Nome='Ricardo da Silva Freitas' WHERE Matricula='20110101'

Inserir (INSERT)
INSERT INTO Alunos (Matricula, Nome, CPF, RG, Telefone, e-mail) VALUES ('20110104', 'Carlos Alberto', '999.999.99999', '999999', 'alberto@fapan.edu.br')

Apagar (DELETE)
DELETE FROM Alunos WHERE Matricula='20110101'

Exemplo: relatrios Selecione todos os alunos que tiveram a NOTA 1 maior que 2:
SELECT Alunos.Nome, Notas.Nota1 FROM Alunos, Notas WHERE Alunos.Matricula = Notas.Matricula AND Notas.Nota1 > 2
Nome Ricardo da Silva Jos de Souza Nota1 3 3

Obrigado

Prxima aula:
Conceitos e arquitetura de sistema de banco de dados.

AVA: http://ava.sifapan.com.br e-mail: rtikao@gmail.com

You might also like