b anco de d ados linguagem de definição de dados - sql

26
BANCO DE DADOS Linguagem de definição de dados - SQL

Upload: emanuel-monteiro-goncalves

Post on 07-Apr-2016

250 views

Category:

Documents


23 download

TRANSCRIPT

Page 1: B ANCO DE D ADOS Linguagem de definição de dados - SQL

BANCO DE DADOSLinguagem de definição de dados - SQL

Page 2: B ANCO DE D ADOS Linguagem de definição de dados - SQL

INTRODUÇÃO A linguagem SQL (Structure Query

Language) surgiu no início dos anos 70, como resultado de um projeto da IBM para desenvolvimento de uma linguagem que se adequasse ao modelo relacional.

A linguagem SQL é basicamente uma linguagem de consulta a banco de dados, sendo ela relacional, isto é, ela é ideal para o tratamento de dados relacionados, aqueles que podem ser arranjados em uma tabela.

Utilizando a linguagem SQL pode se criar tabelas e também acessar os dados ali cadastrados

Page 3: B ANCO DE D ADOS Linguagem de definição de dados - SQL

A ESTRUTURA DA LINGUAGEM SQL A linguagem de programação SQL é formada

por um grupo muito grande de comandos que podem ser executados para os mais diversos objetivos.

Estes comandos são divididos em:

DDL DML

Page 4: B ANCO DE D ADOS Linguagem de definição de dados - SQL

LINGUAGEM DE DEFINIÇÃO DE DADOS (DATA DEFINITION LANGUAGE -DDL) Fornece comandos para a criação e

modificação das tabelas do modelo de banco de dados, bem como a remoção de tabelas e criação de índices.os principais comandos que fazem parte da DDL são: Create Table, Drop Table e Alter Table;

Page 5: B ANCO DE D ADOS Linguagem de definição de dados - SQL

LINGUAGEM DE MANIPULAÇÃO DE DADOS( DATA MANIPULATION LANGUAGE -DML) Inclui uma linguagem de consulta aos dados

das tabelas. Compreende os comandos para inserir, remover e modificar informações em um BD. Os comandos básicos da DML são: Select, Insert, Update e Delete.

Page 6: B ANCO DE D ADOS Linguagem de definição de dados - SQL

QUAIS SÃO OS TIPOS DE DADOS EM SQL? Varchar (n) Bit (n) Bit Varying Date Time

Page 7: B ANCO DE D ADOS Linguagem de definição de dados - SQL

QUAIS SÃO OS TIPOS DE DADOS EM SQL? Integer (Int) Decimal Float Real

Page 8: B ANCO DE D ADOS Linguagem de definição de dados - SQL

OPERADORES Lógicos - Or, And, Not Relacionais - >, <, >=,<>, Like, Between Aritméticos - +, - ,* ,/ Conjunturais - Any, All, Exist, In

Page 9: B ANCO DE D ADOS Linguagem de definição de dados - SQL

FUNÇÕES AVG Média MAX Maior Valor MIN Mínimo COUNT Contar SUM Somar

Page 10: B ANCO DE D ADOS Linguagem de definição de dados - SQL

EXEMPLOS DDL Criar uma tabela CREATE TABLE

NOME COLUNAS CHAVES RESTRIÇÕES

CLIENTEID_CLIENT

ENOME

CPF TEL

Page 11: B ANCO DE D ADOS Linguagem de definição de dados - SQL

EXEMPLOS DDLCREATE TABLE CLIENTE(ID_CLIENTE INT(11) NOT NULL,NOME VARCHAR (50), CPF VARCHAR(50),TEL VARCHAR (50),PRIMARY KEY (ID_CLIENTE) );

ID_CLIENTE

NOME

CPF TEL

Page 12: B ANCO DE D ADOS Linguagem de definição de dados - SQL

EXEMPLOS DDLCREATE TABLE PEDIDO(ID_PEDIDO INT (14) NOT NULL,ID_CLIENTE INT (11),DATAVENDA DATE,PRIMARY KEY (ID_PEDIDO)FOREIGN KEY (ID_CLIENTE) REFERENCES

CLIENTE(ID_CLIENTE));ID_PEDIDO ID_CLIENTE DATAVENDA

Page 13: B ANCO DE D ADOS Linguagem de definição de dados - SQL

EXEMPLOS DDL Remover uma tabela - DROP TABLE Alterar uma tabela - ALTER TABLE

ALTER TABLE - Altera uma tabelaALTER TABLE nome_tabela RENAME novo_nome

DROP TABLE - Excluir uma tabelaDROP TABLE nome_tabela

Alterando uma tabela, adicionando uma nova coluna: ALTER TABLE CLIENTES ADD COLUMN (TELEFONE VARCHAR(10)

NOT NULL);

Alterando uma tabela, modificando uma coluna: ALTER TABLE CLIENTES MODIFY COLUMN (TELEFONE VARCHAR(12));

Page 14: B ANCO DE D ADOS Linguagem de definição de dados - SQL

EXEMPLOS DML Inserir um registro

INSERT INTO NOME_TABELA(COLUNAS)VALUES (VALORES PARA AS COLUNAS)

INSERT INTO 'PRODUTO'(ID_PRODUTO, NOME, PREÇO)VALUES( 1, 'VIOLÃO', '550')

ID_PRODUTO NOME PREÇO001 VIOLÃO 550

Page 15: B ANCO DE D ADOS Linguagem de definição de dados - SQL

EXEMPLOS DML SELECT - COMANDO MAIS IMPORTANTE PROCESSAMENTO DE CONSULTAS

CLÁUSULAS SELECT = O QUE FROM= DE ONDE WHERE= CONDIÇÃO

SELECT * todos os campos: seleçãoFROM PRODUTOWHERE NOME='VIOLÃO'

Page 16: B ANCO DE D ADOS Linguagem de definição de dados - SQL

EXEMPLOS DML -SELECTSELECT CLIENTE.NOME, PEDIDO.DATAFROM CLIENTE, PEDIDOWHERE PEDIDO.DATA BETWEEN '21/06/2010' AND '30/06/2010'

PROJEÇÃO

Page 17: B ANCO DE D ADOS Linguagem de definição de dados - SQL

ATIVIDADES Com base no modelo de dados a seguir,

escreva com os comandos SQL que realizam cada uma das tarefas solicitadas.

ProdutoCodigo_produto Integer NN (PK)Descricao_Produto Varchar(30) NNPreco_Produto Float NN

ItensCod_Prod Integer NN (PFK)NumNF Integer NN (PFK)Num_Item Integer NNQde_Item Float NN

Nota_FiscalNumero_NF Integer NN (PK)Data_NF Date NNValor_NF Float NN

Possui

Pertence

LegendaPK - Chave PrimáriaNN- Not NullPFK- Chave primária e estrangeira

Page 18: B ANCO DE D ADOS Linguagem de definição de dados - SQL

OUTROS COMANDOS SQLOperadores AND / OR

SELECT nome_coluna1, nome_coluna2, ..., nome_colunaN

FROM nome_tabelaWHERE condição1 AND condição2

SELECT nome_coluna1, nome_coluna2, ..., nome_colunaN

FROM nome_tabelaWHERE condição1 OR condição2

Page 19: B ANCO DE D ADOS Linguagem de definição de dados - SQL

ORDER BYOrdena a apresentação dos dados

SELECT nome_coluna1, nome_coluna2, ..., nome_colunaN

FROM nome_tabelaORDER BY nome_coluna ASC | DESC

Page 20: B ANCO DE D ADOS Linguagem de definição de dados - SQL

LIKECondição para seleção de linhas

(registros) da tabela usando textos

SELECT nome_coluna1, nome_coluna2, ..., nome_colunaN

FROM nome_tabelaWHERE nome_coluna LIKE padrão

Page 21: B ANCO DE D ADOS Linguagem de definição de dados - SQL

BETWEEN(semelhante ao AND)

SELECT nome_coluna1, nome_coluna2, ..., nome_colunaN

FROM nome_tabelaWHERE nome_coluna BETWEEN valor1

AND valor2

Page 22: B ANCO DE D ADOS Linguagem de definição de dados - SQL

UPDATEAtualiza valor armazenado na tabela

UPDATE nome_tabelaSET nome_coluna1 = valor1,

nome_coluna2 = valor2, ..., nome_colunaN = valorN

WHERE condição

Page 23: B ANCO DE D ADOS Linguagem de definição de dados - SQL

DELETEExcluir dados da tabelaDELETE nome_tabelaWHERE condição

Page 24: B ANCO DE D ADOS Linguagem de definição de dados - SQL

FUNÇÕES AGREGADORAS SUM() – soma de valoresSELECT SUM (nome_coluna)FROM nome_tabela

COUNT() - contagem de linhas (registros)SELECT COUNT (nome_coluna)FROM nome_tabela

AVG() - média aritmética de valoresSELECT AVG (nome_coluna)FROM nome_tabela

Page 25: B ANCO DE D ADOS Linguagem de definição de dados - SQL

FUNÇÕES AGREGADORAS MAX () - o maior valor de uma coluna da tabelaSELECT MAX (nome_coluna)FROM nome_tabela

MIN () - o menor valor de uma coluna da tabelaSELECT MIN (nome_coluna)FROM nome_tabela

GROUP BY – agrupar os dados, utilizando uma função agregadora

SELECT nome_coluna1, função_agregadora (nome_coluna2)

FROM nome_tabelaGROUP BY nome_coluna1

Page 26: B ANCO DE D ADOS Linguagem de definição de dados - SQL

FUNÇÕES AGREGADORAS HAVING

SELECT nome_coluna1, função_agregadora (nome_coluna2)

FROM nome_tabelaGROUP BY nome_coluna1HAVING função_agregadora

(nome_coluna2) condição