Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução
DDL -
Definição SQL-DDL para
Oracle 18c
Autor:
Prof.Enzo Seraphim
SQL - Linguagem Estruturada de
Consulta
Os comandos podem ser agrupados em 3 classes:
Banco de Dados
Exemplo Prático de
Modelo Entidade-Relacionamento
Autor 1
Escreve
cod_autor
nome
nascimento N
titulo
cod_autor
Livro cod_editora
valor
publicacao
N volume
Editora
Publicado
1
cod_editora
razao
endereco
Banco de Dados cidade
Exemplo Prático de
Modelo Relacional
Banco de Dados
Comandos de Definição de Relações
Para todos comandos da DDL:
– CREATE - Cria uma definição.
– ALTER - Alterar alguma definição.
– DROP - Excluí uma definição.
Alguns comandos da DDL:
– TABLE - Defini uma tabela, seus campos e as
restrições de campo.
– INDEX - Defini um índice associado a um
campo de uma tabela.
Banco de Dados
Comandos de Definição de Relações
– TRIGGER - Defini um conjunto de instruções
que são automaticamente executadas antes ou
depois de um comando INSERT, UPDADE ou
DELETE.
– Comando CREATE PROCEDURE - Defini um
conjunto de instruções. Podem recebem ou
retornar valores. Pode ser executadas através de
uma solicitação do usuário ou por um
TRIGGER.
Banco de Dados
CREATE TABLE
Cria uma nova tabela com seus
campos e define as restrições de
campo.
Banco de Dados
Tipos de dados:
NUMBER (precisão, decimal) Tamanho de
armazemanento variável. Para armazenamento de
valores decimais. Precisão define a quantidade de
digitos numérico máximo para o dado e decimal a
quantidade de números decimais. Por exemplo:
NUMBER (10,3) indica que o dados pode ter no
máximo 7 digitos inteiros e 3 dígitos decimais.
INTEGER. Mesmo que Number(38). Tamanho de
armazemanento 32 bits. Para armazenamento de
números inteiros no intervalo de –2.147.483.648 to
2.147.483.647.
Banco de Dados
Tipos de dados:
DATE. Tamanho de armazenamento 64 bits. Para
armazenamento de data e hora. O intervalo de datas
válidas é 1/Jan/100 até 11/Jan/5941, incluso tempo.
BLOB. Tamanho de armazenamento variável. Para
armazenamento de grande quantidade de dados
como audio, vídeo, gráficos,etc.
Banco de Dados
Exemplo
/* Cria tabela autor */
Banco de Dados
Exemplo
/* Cria tabela editora */
Banco de Dados
Exemplo
/* Cria tabela livro */
CREATE TABLE LIVRO(
TITULO CHAR(70) NOT NULL,
COD_AUTOR NUMBER(3) NOT NULL,
COD_EDITORA NUMBER(3) NOT NULL,
VALOR NUMBER(7,2),
COMENTARIO BLOB,
PUBLICACAO DATE,
VOLUME NUMBER(2),
CONSTRAINT CHAVELIVRO
PRIMARY KEY (TITULO, COD_AUTOR),
CONSTRAINT LIVROINHERITAUTOR
FOREIGN KEY (COD_AUTOR) REFERENCES AUTOR,
CONSTRAINT LIVROINHERITEDITORA
FOREIGN KEY (COD_EDITORA) REFERENCES EDITORA);
Banco de Dados
ALTER TABLE
Altera as definições de campos e de restrições.
Banco de Dados
Exemplo
/* Adicionar o campo E-MAIL na tabela Autor */
Banco de Dados
DROP TABLE
Exclui uma tabela existente de um banco de
dados. Não pode ser excluída uma tabela1 que
possuí alguma referência. Neste caso deve-se
primeiro excluir a tabela2 que possui algum
campo que esta referenciando e depois excluir
tabela1.
DROP TABLE tabela
Exemplo:
/* Apaga tabela livro */
DROP TABLE LIVRO;
Banco de Dados
CREATE INDEX
Cria um novo índice em uma tabela existente.
CREATE [UNIQUE] INDEX índice ON
tabela ( campo [ASC | DESC] [, campo…])
As funções dos índices são:
Auxiliar o gerenciador em uma pesquisa de um
ou mais campos na base de dados, quando for
solicitado;
Auxiliar o gerenciador em uma ordenação de
um ou mais campos na base de dados, quando
for solicitado.
Banco de Dados
Exemplo
/* Cria indice do campo nascimento,
Ordem descendente para tabela autor */
CREATE INDEX INDNASCIMENTO
ON AUTOR (NASCIMENTO DESC);
Banco de Dados
DROP INDEX
Exemplo:
Banco de Dados
13/09/21 Banco de Dados
Autor:
Prof.Enzo Seraphim