banco de dados - fabianotaguchi.files.wordpress.com · exercÍcios 02 –defina comandos sql para:...
TRANSCRIPT
-
22/03/2015
1
BANCO DE DADOS
Prof. Fabiano Taguchihttp://fabianotaguchi.wordpress.com
SQL
A Structed Query Language foi desenvolvida em 1974nos laboratrio da IBM em San Jos na Califrnia, baseadono modelo relacional, sua primeira verso foi chamada deSEQUEL (Structed English Query Language).
Anos depois a ANSI e ISO passaram a adotar a SQL comopadro oficial para manipulao em ambiente relacional.
-
22/03/2015
2
LINGUAGEM SQL
Linguagem usada em SGBD para:
Definir estrutura de dados;
Modificar dados em um banco de dados;
Especificar restries de segurana;
Realizar consultas.
FUNES
A linguagem SQL utilizada para vrias aplicaes,provendo suporte a vrias funes:
DDL (Linguagem de definio de dados): Usado paraarmazenar os dados com comandos de criao ealterao.
DML (Linguagem de manipulao de dados): Comandosque permitem incluso e seleo de dados.
-
22/03/2015
3
FUNES
A linguagem SQL utilizada para vrias aplicaes,provendo suporte a vrias funes:
DCL (Linguagem de controle de dados): Comandos quefazem o cadastramento de usurios no banco de dados.
TC (Controle de transaes): Comandos paraespecificao de incio e fim das transaes.
FUNES
DDL = CREATE, ALTER e DROP.
DML = SELECT, INSERT, UPDATE e DELETE.
DCL = GRANT e REVOKE.
TC = COMMIT, ROLLBACK e SAVEPOINT.
-
22/03/2015
4
CARACTERSTICAS
Definio de dados -> Comandos DDL permite a criaoe organizao dos dados;
Manipulao de dados -> Comandos DML possibilitam amanipulao dos dados armazenados;
Controle de acesso -> Proteo contra manipulao;
Integridade dos dados -> Define regras de integridade;
Independncia e portabilidade de fabricante ->Incorporada em vrios SGBD, para ser usado emcomputadores at celulares;
TIPOS DE DADOS
-
22/03/2015
5
DEFINIO DE DADOS
INTEGER = Nmero positivo ou negativo inteiro;
NUMERIC = Nmero positivo ou negativo de pontoflutuante;
FLOAT = Nmero de ponto flutuante em que possveldefinir o nvel de preciso;
DATE = armazenamento de datas;
TIME = armazenamento de hora;
VARCHAR = armazenamento de caracteres.
DEFINIO DE DADOS
SMALLINT = Nmero positivo ou negativo inteiro menosque o INTEGER;
TIMESTAMP = Armazena data e hora;
INTERVAL = Intervalo de data e hora;
BIT = armazenamento de um nmero fixo de bits;
BIT VARYING = Permite armazenar valores maiores,geralmente utilizado para imagens.
-
22/03/2015
6
ESTRUTURA DO BANCO DE DADOS
TABELAS
So as estruturas mais importantes em um banco dedados. Nas tabelas estar todo o contedo que representacada objeto no mundo real (entidades).
Uma tabela compostas de colunas (atributos de uma entidade), que por sua vez formam os registros (tuplas).
-
22/03/2015
7
CONSTRAINTS
Constraints so integridades a serem definidas emtabelas. Pode-se definir integridades para:
Definir campos obrigatrios;
Chaves primrias;
Chaves estrangeiras.
CONSTRAINTS
CHAVE PRIMRIA
Coluna identificadora de um registro em uma tabela,para representa-la basta acrescentar a chave primary key(coluna).
CHAVES ESTRANGEIRA
Campo que estabelece o relacionamento entre duastabelas, para representao utilizado a chave foreingkey (coluna) e references (tabela).
-
22/03/2015
8
CONSTRAINTS
CONSTRAINTS
NOT NULL
Indica que o contedo de uma coluna da tabela nopoder ser nulo.
DEFAULT
Define o contedo padro a uma coluna de uma tabela,atravs da representao default valor.
-
22/03/2015
9
CONSTRAINTS
No exemplo temos a renda como valor default 0.
create table Cliente(
codigo integer not null,
nome varchar(40) not null,
fone varchar(20),
renda numeric(9,2) default 0 not null
);
CONSTRAINTS
-
22/03/2015
10
CONSTRAINTS
UNIQUE
Um atributo unique aquele que considerado nicoem uma tabela, isto , valores dessa coluna no podemser repetidos. A chave primria um exemplo de umatributo com a regra unique.
A declarao de um atributo unique realizada na criao da tabela.
CONSTRAINTS
CHECK
A regra check define o intervalo de dados que pode serusado nos campos de uma coluna. No exemplo s podemser aceitos pesos maiores que 0.
create table pessoa(
cod_pes integer not null check (cod_pes>0),
nome_pes varchar(255) not null
);
-
22/03/2015
11
RESTRIES DE INTEGRIDADE
As restries de integridade so utilizadas parasituaes de incluso e excluso.
Incluso: Um novo cliente s pode ser inserido em umacidade que j existe no banco de dados;
Excluso: S possvel remover cidades onde noexistem clientes cadastrados;
INCLUSO
-
22/03/2015
12
EXCLUSO
EXCLUSO
-
22/03/2015
13
EXCLUSO
EXCLUSO
-
22/03/2015
14
COMANDOS DDL
CRIANDO UM BANCO DE DADOS
O comando create database e usado para criao deum banco de dados. Um banco de dados o primeiropasso a ser fazer no incio de uma tarefa, haja visto que astabelas so criadas a partir de um banco de dadosexistente. O comando para criao :
create database nome;
-
22/03/2015
15
SELECIONANDO UM BANCO DE DADOS
Aps criado o banco de dados, deve ento serselecionado qual banco de dados ser selecionado eutilizado para execuo dos comandos, sejam eles DDL ouDML, para isso usado o comando use da seguinte forma:
use nome;
CRIANDO TABELAS
O comando usado para criao de tabelas o createtable, como parmetro para este comando passado onome da tabela que ser criada, os campos, os tipos dosdados dos campos e as contraints, se houver.
create table clientes.
-
22/03/2015
16
CRIANDO TABELAS
create table cliente(
nome varchar(30),
sexo varchar(1),
cpf numeric(11),
endereco varchar(40),
cidade varchar(30),
primary key(cpf)
);
VISUALIZANDO UMA TABELA
O comando show table utilizado para mostrar aestrutura de uma tabela que foi criada, nesta estrutura possvel visualizar os nomes dos campos e os tipos dosdados, a sintaxe para o comando :
show table nome;
show tables;
-
22/03/2015
17
REMOVENDO UMA TABELA
O comando usado para remover uma tabela o droptable. Ao fazer uso deste comando, todas os dados databela tambm sero excludos.
drop table clientes;
ALTERANDO UMA TABELA
Atravs do comando alter table possvel alterar aestrutura de uma tabela, o comando abaixo adicionadouma coluna CPF em uma tabela chamada Aluno:
alter table Aluno add cpf varchar(14);
-
22/03/2015
18
ALTERANDO UMA TABELA
Usamos o comando alter table tambm para modificaro tipo ou o tamanho de um campo em uma tabela, ocomando mostrado abaixo
alter table Aluno alter cpf type char(14);
ALTERANDO UMA TABELA
possvel excluir um campo de uma tabela com ocomando alter table, para isso basta indicar o nome docampo, o comando abaixo nos mostra:
alter table Aluno drop cpf;
-
22/03/2015
19
EXERCCIOS
EXERCCIOS
01 Defina comandos SQL para:
Criar uma nova base de dados chamada Locadora;
Criar as seguintes tabelas:
-
22/03/2015
20
EXERCCIOS
02 Defina comandos SQL para:
Alterar o campos cod_clientes das tabelas para o tipointeger;
Adicionar na tabela locacao um campo para a data dedevolucao do filme;
Excluir o campo cidade da tabela cliente;
Excluir a tabela categorias.
EXERCCIOS
03 Para o modelo relacional abaixo, execute oscomandos SQL solicitados:
Crie o banco de dados e chame de loja
Crie as tabelas demonstradas no modelo relacional
Crie as chaves primrios e estrangeiras correspondentepara as tabelas.
-
22/03/2015
21
EXERCCIOS