BANCO DE DADOS - fabianotaguchi.files.wordpress.com · 18/05/2016 3 FUNÇÕES A linguagem SQL é...

Preview:

Citation preview

18/05/2016

1

BANCO DE DADOS

Prof. Fabiano Taguchihttp://fabianotaguchi.wordpress.com

fabianotaguchi@hotmail.com

SQL

A Structed Query Language foi desenvolvida em 1974nos laboratório da IBM em San José na Califórnia, baseadono modelo relacional, sua primeira versão foi chamada deSEQUEL (Structed English Query Language).

Anos depois a ANSI e ISO passaram a adotar a SQL comopadrão oficial para manipulação em ambiente relacional.

18/05/2016

2

LINGUAGEM SQL

Linguagem usada em SGBD para:

Definir estrutura de dados;

Modificar dados em um banco de dados;

Especificar restrições de segurança;

Realizar consultas.

FUNÇÕES

A linguagem SQL é utilizada para várias aplicações,provendo suporte a várias funções:

DDL (Linguagem de definição de dados): Usado paraarmazenar os dados com comandos de criação ealteração.

DML (Linguagem de manipulação de dados): Comandosque permitem inclusão e seleção de dados.

18/05/2016

3

FUNÇÕES

A linguagem SQL é utilizada para várias aplicações,provendo suporte a várias funções:

DCL (Linguagem de controle de dados): Comandos quefazem o cadastramento de usuários no banco de dados.

TC (Controle de transações): Comandos paraespecificação de início e fim das transações.

FUNÇÕES

DDL = CREATE, ALTER e DROP.

DML = SELECT, INSERT, UPDATE e DELETE.

DCL = GRANT e REVOKE.

TC = COMMIT, ROLLBACK e SAVEPOINT.

18/05/2016

4

CARACTERÍSTICAS

Definição de dados -> Comandos DDL permite a criaçãoe organização dos dados;

Manipulação de dados -> Comandos DML possibilitam amanipulação dos dados armazenados;

Controle de acesso -> Proteção contra manipulação;

Integridade dos dados -> Define regras de integridade;

Independência e portabilidade de fabricante ->Incorporada em vários SGBD, para ser usado emcomputadores até celulares;

TIPOS DE DADOS

18/05/2016

5

DEFINIÇÃO DE DADOS

INTEGER = Número positivo ou negativo inteiro;

NUMERIC = Número positivo ou negativo de pontoflutuante;

FLOAT = Número de ponto flutuante em que é possíveldefinir o nível de precisão;

DATE = armazenamento de datas;

TIME = armazenamento de hora;

VARCHAR = armazenamento de caracteres.

DEFINIÇÃO DE DADOS

SMALLINT = Número positivo ou negativo inteiro menosque o INTEGER;

TIMESTAMP = Armazena data e hora;

INTERVAL = Intervalo de data e hora;

BIT = armazenamento de um número fixo de bits;

BIT VARYING = Permite armazenar valores maiores,geralmente utilizado para imagens.

18/05/2016

6

ESTRUTURA DO BANCO DE DADOS

TABELAS

São as estruturas mais importantes em um banco dedados. Nas tabelas estará todo o conteúdo que representacada objeto no mundo real (entidades).

Uma tabela é compostas de colunas (atributos de uma entidade), que por sua vez formam os registros (tuplas).

18/05/2016

7

CONSTRAINTS

Constraints são integridades a serem definidas emtabelas. Pode-se definir integridades para:

Definir campos obrigatórios;

Chaves primárias;

Chaves estrangeiras.

CONSTRAINTS

CHAVE PRIMÁRIA

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 representação é utilizado a chave foreingkey (coluna) e references (tabela).

18/05/2016

8

CONSTRAINTS

CONSTRAINTS

NOT NULL

Indica que o conteúdo de uma coluna da tabela nãopoderá ser nulo.

DEFAULT

Define o conteúdo padrão a uma coluna de uma tabela,através da representação default valor.

18/05/2016

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

18/05/2016

10

CONSTRAINTS

UNIQUE

Um atributo unique é aquele que é considerado únicoem uma tabela, isto é, valores dessa coluna não podemser repetidos. A chave primária é um exemplo de umatributo com a regra unique.

A declaração de um atributo unique é realizada na criação 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

);

18/05/2016

11

RESTRIÇÕES DE INTEGRIDADE

As restrições de integridade são utilizadas parasituações de inclusão e exclusão.

Inclusão: Um novo cliente só pode ser inserido em umacidade que já existe no banco de dados;

Exclusão: Só é possível remover cidades onde nãoexistem clientes cadastrados;

INCLUSÃO

18/05/2016

12

EXCLUSÃO

EXCLUSÃO

18/05/2016

13

EXCLUSÃO

EXCLUSÃO

18/05/2016

14

COMANDOS DDL

CRIANDO UM BANCO DE DADOS

O comando create database e usado para criação deum banco de dados. Um banco de dados é o primeiropasso a ser fazer no início de uma tarefa, haja visto que astabelas são criadas a partir de um banco de dadosexistente. O comando para criação é:

create database nome;

18/05/2016

15

SELECIONANDO UM BANCO DE DADOS

Após criado o banco de dados, deve então serselecionado qual banco de dados será utilizado paraexecução dos comandos, sejam eles DDL ou DML, para issoé usado o comando use da seguinte forma:

use nome;

CRIANDO TABELAS

O comando usado para criação de tabelas é o createtable, como parâmetro 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.

18/05/2016

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 épossível visualizar os nomes dos campos e os tipos dosdados, a sintaxe para o comando é:

show table nome;

show tables;

18/05/2016

17

REMOVENDO UMA TABELA

O comando usado para remover uma tabela é o droptable. Ao fazer uso deste comando, todas os dados databela também serão excluídos.

drop table clientes;

ALTERANDO UMA TABELA

Através do comando alter table é possível alterar aestrutura de uma tabela, o comando abaixo é adicionadouma coluna CPF em uma tabela chamada Aluno:

alter table Aluno add cpf varchar(14);

18/05/2016

18

ALTERANDO UMA TABELA

Usamos o comando alter table também 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

É possível 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;

18/05/2016

19

EXERCÍCIOS

EXERCÍCIOS

01 – Defina comandos SQL para:

Criar uma nova base de dados chamada Locadora;

Criar as seguintes tabelas:

18/05/2016

20

EXERCÍCIOS

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.

EXERCÍCIOS

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 primárias e estrangeiras correspondentepara as tabelas.

18/05/2016

21

EXERCÍCIOS

Recommended