Upload
vothuan
View
222
Download
3
Embed Size (px)
Citation preview
Introdução
O que é Banco de Dados
SGBD MYSQL
Tipos de Tabelas
Tipos de Dados
Linguagem SQL
Comandos SQL
O que é um Banco de Dados?
Conjuntos de dados
Grupo de dados que são utilizados para o
mesmo fim
Banco de dados <> de SGBD, porém é utilizado
como sinônimo
SGBG Software para Gerenciamento de
Banco de dados
SGBD MYSQL
Sistema e Gerenciamento de Banco de Dados.
Possui 10 milhões de instalações atualmente.
Ficou muito popular com a união com o PHP.
Banco de Dados Relacional
Por que usar o MySQL?
Banco open source mais popular do mundo.
Consistência
Alta Performance
Confiabilidade
Fácil de ser usado
Conjunto de funções.
Segurança.
MySQL - Características
Gratuito
Código Aberto
Escrito em C e C++
Suporta mais de 20 plataformas diferentes:
Win32, Linux, FreeBSD, Unix, etc.
.Diversidade de APIs
MySQL - Características
Rapidez
Baixa exigência de processamento.
Mais de 50 milhões de registros
Mais de 60.000 tabelas e aproximadamente
5.000.000.000 linhas
São permitidos mais de 64 indexações por
tabela
Tabela MyISAM
Melhor Desempenho para aplicações com baixa
concorrência sobre os dados. (Leitura ou
Escrita)
Ótimo desempenho quando é predominante a
leitura
Não provê controle de transações e nem
integridade referencial
Tabela InnoDB
Incluída a partir da versão 4.0 do MySQL.
Usada para aplicações que possuam controle de
Transações.
Suporte de Integridade Referencial
Facilidade de implementação dos níveis de isolamento
Alto desempenho com grandes volumes de dados e um
número elevado de concorrência entre leitura e escrita;
Implementa o lock de registro o que fornece um melhor
gerenciamento da concorrência
Tabela MERGE
Conhecida como MRG_MyISAM.
São coleções de tabelas MyISAM idênticas
Permite a divisão de uma tabela Grande em
varias partes menores.
Tabela MEMORY (HEAP)
Tabela Temporária
Usadas para consultas com muita freqüência e que não sofrem muitas alterações.
Aumenta a performance e a velocidade de Consulta
Conteúdo volátil, pois não são gravados no disco
Não suporta colunas do tipo BLOB/TEXT;
Tabelas FEDERATED
Versão do Mysql 5.0.3
Acesso remoto melhor do que acesso local.
Disponíveis apenas nas Versões Max do
MySQL
Não há suporte para transação
Não Suporta comandos DDL
A tabela FEDERATED não trabalha com cache
query
Tipos de Dados
Domínio Descrição
char(n) conjunto de n caracteres de tamanho definido
varchar(n) conjunto de n caracteres de tamanho variável
Int Inteiro
SmallInt Inteiro
numeric(p, d) real com precisão definida
real real com precisão dupla
float(n) real com precisão de pelo menos n dígitos
date data com 4 dígitos para ano e 2 dígitos para mês e
dia
Time hora do dia em horas, minutos e segundos
Auto incremento Inteiro . Usado como contador
Restrições de Integridades
primary key (Aj1, Aj2, ..., Ajm)
unique key (A1)
foreign key (A) references T
not null
Null
check (P)
Usando PHPMyADMIN
Criar Banco de Dados
Criar tabela:• Numero de Campos
– Criar campos
• Nome,Tipo,Tamanho,Definir Chave Primaria,Definir Índices
• Define o Tipo da Tabela
• Para terminar clicar em Salvar
Usando MySQL FRONT
Inserindo Dados no Banco
– Clicar sobre o a base de dados curso
• Escolha a tabela que você deseja inserir dados
• Clique na opção Data Browser
• Digite os dados nos campos que deseja inserir
• Aperte F5 para atualizar os dados inseridos na Base.
Exercicio
Crie um banco de dados com o nome ‘curso’.
Crie uma tabela com o nome ‘clientes’.
Crie 3 campos para a Tabela clientes , definindo o tipo da tabela, o tipo de dado e tamanho de cada campo, chave primaria, índice. – Campos a serem Criados
• cli_codigo, cli_nome, cli_telefone.
Inserir 10 linhas de registros na base de dados usando o MySQL Front.
Linguagem SQL,
Linguagem de manipulação dos banco de
dados. Que se divide em Três Categorias:
1 – DDL (Linguagem de Definição dos Dados)
2 – DML (Linguagem de Manipulação de Dados)
3 – DCL (Linguagem de Controle de Dados)
Comandos SQL
Comandos Usado para Tipo
select Consultar dados DML
insert, update, delete Incluir, alterar e remover dados DML
commit, rollback Controlar transações DML
create, alter, drop Definir, alterar e remover
esquemas
DDL
Comando CREATE
create table r (A1D1, A2D2, ...., AnDn,
<restrição de integridade1>,
<restrição de integridadek>)• A: nome do atributo
• D: domínio
Exemplo:• create table cliente
(nome char(20) not null, endereço char(30),
cidadechar(30), primary key (nome))
Comando ALTER
Adicionar uma nova coluna
alter table cliente add RG char(10)
Alterar o tipo de uma coluna
alter table cliente modify RG char(20)
Remover uma coluna
alter table cliente drop column RG
Comando de INSERT
Permite a inclusão de novas linhas na tabela
INSERT INTO tabela [ ( coluna [, ...] ) ] { DEFAULT
VALUES | VALUES ( expressão [, ...] ) | SELECT
consulta }
INSERT INTO alunos VALUES (001, 'João');
INSERT INTO alunos (id, nome) VALUES (002,
'Maria');
Comando DELETE
Exclui linhas de dados.
DELETE FROM [ ONLY ] tabela [ WHERE condição ]
Exemplos:• DELETE FROM alunos; (Todas as linhas)
• DELETE FROM matricula WHERE disciplina = ‘Estatistica’(linha que satisfazer o where 1 ou mais).
Comando UPDATE
Muda os valores das colunas especificadas em todas as
linhas que satisfazem a condição
UPDATE [ ONLY ] tabela SET coluna = expressão [, ...] [
FROM lista_de ] [ WHERE condição ]
Exemplos:• UPDATE matricula SET disciplina = ‘Estatistica I’
WHERE disciplina = ‘Estatistica’;• UPDATE matricula SET nota = nota + 1.5
WHERE aluno = 001 AND disciplina = ‘Banco de Dados’;
Comando SELECT
Comando de Consulta.
Retorna linhas de uma ou mais tabelas
Exemplo:select [distinct] {*, coluna [alias],
expressões [alias], funções [alias], ...}
from {tabelas [alias],}
[where condição]
[group by colunas]
[having condição]
[order by colunas [asc | desc]
Opções de Consultas
Opções Descrição
distinct
Indica que as linhas duplicadas devem ser eliminadas do resultado
*
Indica que todas as colunas de todas as tabelas da cláusula from devem ser
incluídas no resultado
coluna
Coluna de uma tabela listada na cláusula from que deve ser incluída no
resultado
expressões
Expressões aritméticas envolvendo uma ou mais colunas das tabelas
listadas na cláusula from
funções
Funções definidas em SQL como, por exemplo, funções de agregação, que
calculam estatísticas sobre colunas (avg, min, max, count, etc)
Opções de Consultas
Opções Descrição
aliasNome alternativo para uma coluna, expressão ou tabela
tabelasUma ou mais tabelas envolvidas na consulta
condição
(where)
Especifica um condição à qual as linhas das tabelas da
cláusula from devem satisfazer para gerar uma linha do
resultado
group by colunasIndica que o resultado deve ser agrupado pelas colunas
especificadas
condição
(having)
Limita os grupos a serem mostrados àqueles
satisfazendo a condição
order byOrdenação do resultado, podendo ser crescente (asc) ou
decrescente(desc)
joinSeleciona dados de duas ou mais tabelas gerando uma
consulta completa
Links
Tutoriais: www.illasaron.com
Curso PHP: www.w3schools.com
Indicações de Livros: www.webskill.eti.br
Obrigado
Gabriel Rambaldi Gonçalves Vidal Magalhães
e-mail/msn: [email protected]
José Geraldo Bustamante de Lima
e-mail/msn: [email protected]
Ciência da Computação
Universidade Vale do Rio Verde - UNINCOR
05 de Outubro de 2007