21
18/05/2016 1 BANCO DE DADOS Prof. Fabiano Taguchi http://fabianotaguchi.wordpress.com [email protected] SQL A Structed Query Language foi desenvolvida em 1974 nos laboratório da IBM em San José na Califórnia, baseado no modelo relacional, sua primeira versão foi chamada de SEQUEL (Structed English Query Language). Anos depois a ANSI e ISO passaram a adotar a SQL como padrão oficial para manipulação em ambiente relacional.

BANCO DE DADOS - fabianotaguchi.files.wordpress.com · 18/05/2016 3 FUNÇÕES A linguagem SQL é utilizada para várias aplicações, provendosuporteaváriasfunções: DCL (Linguagem

Embed Size (px)

Citation preview

18/05/2016

1

BANCO DE DADOS

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

[email protected]

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