Professional Documents
Culture Documents
II
Reviso de DML/DDL
Csar Augusto Loureiro
Objetivo
Linguagens
Linguagem de manipulao
dos dados (DML) - Linguagem
que
define
os
comandos
de
manipulao e operao dos dados
(comandos de consulta e atualizao
dos dados dos arquivos).
Select ...
Linguagens
Linguagem de definio dos
dados (DDL) - Linguagem que
define as aplicaes, arquivos e
campos que iro compor o banco de
dados (comandos de criao e
atualizao da estrutura dos campos
dos arquivos).
Create table.....
Instrues DDL
Tipos de dados
VARCHAR2(tam) => Dados caractere de tamanho
variado
CHAR(tam) => Dados caractere de tamanho fixo
NUMBER(i,d) => Dados numricos de tamanho
variado
DATE => data e hora
LONG => caractere at 2 Gb
CLOB => caractere at 4 Gb
RAW => Binrios Brutos at 2000 bytes
BLOB => Binrios at 4 Gb
Create Table
Sintaxe: Create Table
CREATE TABLE tabela
[(coluna tipo, coluna tipo...)]
AS subconsulta
Create Table
Exemplos:
CREATE TABLE alunos(
matricula
NUMBER(10,0) NOT NULL,
nome
VARCHAR2(40) NOT NULL,
curso
NUMBER(2));
Exercicio
-
Sequence
Utilizado como um contador para
incremento de valores
Sintaxe bsica
CREATE SEQUENCE nome START WITH n
INCREMENT BY n
Sequence
Exemplo:
CREATE SEQUENCE
seq_fornecedores START WITH 1;
SELECT seq_fornecedores.NEXTVAL
FROM dual;
Alter Table
Sintaxe: alter table
-
Alter Table
ALTER TABLE tabela
ADD (Coluna Tipo [DEFAULT exp], Coluna
Tipo);
ALTER TABLE tabela
MODIFY (Coluna Tipo_novo, Coluna
Tipo_novo));
ALTER TABLE tabela
SQL PLUS
Comandos Bsicos
DESC EMP
SQL PLUS
Comandos Bsicos
Tabelas Internas do
Oracle
Tabelas USER_
Tabelas Internas do
Oracle
Tabelas ALL_
Tabelas Internas do
Oracle
Tabelas V$
Comandos DML
Select
Instruo SELECT
Sintaxe
Select
Exemplos
SELECT *
FROM emp
WHERE job NOT IN (CLERK,MANAGER,A
%);
ORDER BY ename;
Select
Exemplos
Select
SELECT empregado.ename ||' trabalha para '||
gerente.ename
as "Relacao Chefe-empregado"
FROM emp empregado, emp gerente
WHERE empregado.mgr = gerente.empno
* Unio da tabela com ela mesma
SELECT ename
FROM emp
WHERE sal >
( SELECT sal
FROM emp
WHERE empno = 7566)
* Select com subconsultas
Exerccio-1
-
Exerccio-2
-
Insert
Instruo INSERT
Adiciona um ou vrios registros a uma tabela.
Sintaxe
INSERT INTO tabela [(campo1[, campo2[, ...]]
VALUES (valor1[, valor2[, ...])
Mutiplos registros:
INSERT INTO tabela [(campo1[, campo2[, ...]]
SELECT [origem.]campo1[, campo2[, ...]
Insert
Exemplos:
INSERT INTO emp ( empno, ename, job,
mgr,
hiredate, sal,
comm, deptno)
VALUES
( 7196, GREEN,
SALESMAN,
SYSDATE, 2000, NULL,
10);
7782,
Insert
Exemplos:
INSERT INTO emp ( empno, ename,
job, mgr, hiredate, sal, comm, deptno)
SELECT empno + 1, ename, job, mgr,
hiredate, sal+200, comm,deptno
FROM emp
WHERE job = 'PRESIDENT;
Exerccio-3
-
Update
Instruo Update
Update
Exemplos
UPDATE emp
SET deptno = 20
WHERE empno = 7782;
UPDATE emp;
SET (job, deptno) =
(SELECT job, deptno
FROM emp
WHERE empno = 7499)
Exerccio-4
-
Delete
Instruo Delete
Cria uma consulta excluso que remove
registros de uma ou mais tabelas
listadas na clusula FROM que satisfaz a
clusula WHERE.
Sintaxe
DELETE [tabela.*]
FROM tabela
Delete
Exemplos
Exerccio-5
-