Você está na página 1de 21

Linguagem de Consulta Estruturada - SQL

Agenda

1. Introdução à Linguagem SQL

2. Linguagem de Manipulação de Dados (DML)

3. Actualizações da Base de dados


1. Introdução à Linguagem SQL
O SQL é uma linguagem usada para manipular dados
e objectos numa base de dados relacional.

1. O SQL não é case-sensitive, ou seja, é independente


Conceito escrever os comandos com letras minúsculas ou
maiúsculas ou mesmo misturando ambas. Os nomes
das tabelas e das colunas também não são case-
sensitive. A única coisa que é case-sensitive são os
dados do tipo caracter.
1. Introdução à Linguagem SQL
A Linguagem SQL possui as seguintes cláusulas:

1.1.  DML (SELECT, INSERT, UPDATE, DELETE,..),

Cláusulas  DDL (CREATE, ALTER, DROP,..),


 DCL (GRANT, REVOKE),
 TCL (COMMIT, ROLLBACK, SAVEPOINT,…).
2. Linguagem de Manipulação
de Dados (DML)
Os comandos DML afectam registros na tabela. São
oprerações básicas efectuadas sobre os dados na
base de dados:
2.1.
Conceito  SELECT(Seleccionar dados da tabela),
 INSERT(Inserir novos registros),
 UPDATE(Actualizar registros existentes),
 DELETE(Apagar registros existentes).
3. Actualizações da BD
O SQL é uma linguagem completa de manipulação de
dados que pode ser usada para para alterar os dados
na BD como também consultar a mesma. Os
comandos para a alteração dos dados da BD não são
3.1. complexas como o SELECT.
Conceito
Os comandos para a alteração de dados da BD são:
 INSERT(Inserir novos registros),
 UPDATE(Actualizar registros existentes),
 DELETE(Apagar registros existentes).
Tabelas para a análise
EMP

DEPT
Tabelas para a análise
EMP DEPT

DEPT2
3. Actualizações da BD
Existem duas formas do comano INSERT. A primeira
permite a inserção de um único registro numa dada
tabela e tem o seguinte formato:
3.2. INSERT INTO NomeTabela[(ListaColunas)]
Insert VALUES (ListaValores);

ListaColunas – Colunas separadas por vírgulas, é


opcional, isto é, pode ser omitida, mas quando
omitida a Lista de valores deve ser do mesmo tipo e
ordem da tabela base.
3. Actualizações da BD
Exemplos:
Insira o número e nome do departamente.
INSERT INTO DEPT(DEPTNO, DNAME)
VALUES (50, 'SCIENCE');
3.2.
Insert Insira um novo registro na tabela DEPT
INSERT INTO DEPT(DEPTNO, DNAME, LOC)
VALUES (50, 'SCIENCE‘, 'CALIFORNIA');
ou
INSERT INTO DEPT
VALUES (50, 'SCIENCE‘, 'CALIFORNIA');
3. Actualizações da BD
A segunda permite a inserção de múltiplos registros
numa dada tabela copiados de uma ou mais tabelas
para outra, e tem o seguinte formato:
3.2. INSERT INTO NomeTabela [(ListaColunas)]
Insert SELECT . . .

Os registos inseridos na tabela são idênticos ao


resultado produzido pelo SELECT.

As restrições aplicadas anteriormente no INSERT.


Aqui também são válidas.
3. Actualizações da BD
Exemplo:

INSERT INTO DEPT


SELECT * FROM DEPT2;
3.2. ou
Insert INSERT INTO DEPT
SELECT DEPTNO, DNAME, LOC FROM DEPT2;
3. Actualizações da BD
O comando UPDATE permite que o conteúdo dos
registos existentes numa determinada tabela seja
alterado. O formato do comando é:
3.3. UPDATE NomeTabela
Update SET NomeColuna1 = Valor1 [, NomeColuna2 = Valor2
. . .]
[WHERE CondicaoPesquisa];
3. Actualizações da BD
UPDATE NomeTabela
SET NomeColuna1 = Valor1 [, NomeColuna2 = Valor2
. . .]
[WHERE CondicaoPesquisa];
3.3.
Update SET – Especifica os nomes das colunas a serem
actualizadas,
O WHERE é opcional, quando omitido, as colunas
especificadas são actualizadas em toda tabela;
quando especificada, só a linhas que satifazem a
condição são actualizadas.
3. Actualizações da BD
Exemplos:
 1. Faça um aumento do salário de todos
empregados em 3%.
3.3. UPDATE EMP SET SAL = SAL*1.03;
Update
 2. Faça um aumento do salário de todos
Managers em 5%.

UPDATE EMP SET SAL = SAL*1.05


WHERE JOB = 'MANAGER';
3. Actualizações da BD
Exemplos:
 3. Promova o empregado Martin para a função
Manager e faça o aumento do seu salário para
2450.
3.3.
Update UPDATE EMP SET SAL = 2450, JOB = 'MANAGER'
WHERE Empno = 7654;
3. Actualizações da BD
O comando DELETE permite que os registos sejam
apagados da tabela. A sintaxe é:

DELETE FROM NomeTabela


3.4. [WHERE CondicaoPesquisa];
DELETE
A condição de pesquisa é opcional. Quando omitida,
todos registos da tabela são apagados. Atenção, não
apaga a tabela. Para apagar a tabela é usado o
comando DROP TABLE.
Quando especificada, só os registos que satisfazem a
condição são apagados.
3. Actualizações da BD
O comando DELETE permite que os registos sejam
apagados da tabela. A sintaxe é:

DELETE FROM NomeTabela


3.4. [WHERE CondicaoPesquisa];
DELETE
A condição de pesquisa é opcional. Quando omitida,
todos registos da tabela são apagados. Atenção, não
apaga a tabela. Para apagar a tabela é usado o
comando DROP TABLE.
Quando especificada, só os registos que satisfazem a
condição são apagados.
3. Actualizações da BD
 Elimine todos empregados do departamento 20.

DELETE FROM EMP


WHERE DEPTNO = 20;
3.4.
DELETE  Elimine todos registos da tabela EMP.

DELETE FROM EMP;


3. Actualizações da BD
O comando TRUNCATE TABLE é usado para eliminar
todos registos de uma tabela. Ele tem a mesma
função que o comando DELETE sem o predicado
WHERE.
3.5. A maior diferença entre o comando DELETE e
TRUNCATE TRUNCATE, é que o TRUNCATE não tem ROLLBACK.

TRUNCATE TABLE EMP;


FIM

Você também pode gostar