Академический Документы
Профессиональный Документы
Культура Документы
Tem como função, ampliar a linguagem SQL para oferecer construções combinadas de bloco
procedural estruturado com manipulação de dados não procedural do SQL. Inclui:
. Declaração de variáveis;
. Atribuições;
. Controle condicional;
. Laços;
. Exceções.
Comando CREATE
Este comando permite a criação de objetos no banco de dados. Abaixo são citados alguns
objetos que podem ser criados:
Tabelas
Funções
Procedimentos
Seqüências
Sinônimos
Triggers
Usuários
Visões
Sintaxe:
CREATE TABLE < nome_tabela >
( nome_atributo1 < tipo > [ NOT NULL ],
nome_atributo2 < tipo > [ NOT NULL ],
......
nome_atributoN < tipo > [ NOT NULL ] ) ;
onde:
nome_table - indica o nome da tabela a ser criada.
nome_atributo - indica o nome do campo a ser criado na tabela.
tipo - indica a definição do tipo de atributo ( number(n,m), varchar2(n),
char(n), date... ).
n - número de dígitos ou de caracteres
m - número de casas decimais
Exemplo:
A seguir código para a criação da tabela Departamento e seu índice de chave primária:
A Tabela de Empregados não poderia ter sido criada antes da Tabela de Departamento, pois
contém uma referência direta àquela tabela. Quando declaramos que CodDep é chave estrangeira,
promovemos de fato a ligação do cadastro de empregados como o cadastro de departamentos.
Comando DROP
Periodicos Monografias
PK,FK1 codAcervo
edicao curso
PK,FK1 codSocio
tipo
PK,FK1 dtEmprestimo
valor
1 Associado, Acervo
2 Livros, Periodicos, Monografia
3 Emprestimo
4 Multa
Comando ALTER
Este comando permite alterar a estrutura de objetos no banco de dados. Abaixo são citados
alguns objetos que podem ser alterados:
Tabelas
Seqüências
Usuários
Sintaxe:
ALTER TABLE < nome_tabela > ADD
( nome_atributo1 < tipo > [ NOT NULL ],
nome_atributo2 < tipo > [ NOT NULL ],
......
nome_atributoN < tipo > [ NOT NULL ] ) ;
onde:
nome_table - indica o nome da tabela a ser alterada.
nome_atributo - indica o nome do campo a ser criado na tabela.
tipo - indica a definição do tipo de atributo ( number(n,m), varchar2(n),
char(n), date... ).
n - número de dígitos ou de caracteres
m - número de casas decimais
Exemplo:
Sintaxe:
ALTER TABLE < nome_tabela > MODIFY
( nome_atributo1 < tipo > [ NOT NULL ],
......
nome_atributoN < tipo > [ NOT NULL ] ) ;
Exemplo:
Importante: Não é possível alterar nome de atributo/coluna. Para isto, é necessário excluir a
coluna e criá-la novamente com o nome desejado.
Sintaxe:
ALTER TABLE < nome_tabela > DROP COLUMN nome_atributo1;
Sintaxe:
ALTER TABLE < nome_tabela > ADD CONSTRAINT <nome_constraint>
PRIMARY KEY (<atributos_chave>);
Sintaxe:
ALTER TABLE < nome_tabela > ADD CONSTRAINT <nome_constraint>
FOREIGN KEY (<atributos_chave >)
REFERENCES <tabela_ref> (<atributo_chave_tabela_ref>);
Sintaxe:
ALTER TABLE < nome_tabela > ADD CONSTRAINT <nome_constraint>
CHECK (<condicao>);
Sintaxe:
ALTER TABLE < nome_tabela > DROP CONSTRAINT <nome_constraint>;
Sintaxe:
ALTER TABLE < nome_tabela > ENABLE/DISABLE CONSTRAINT <nome_const>;
Exercício 2
b) Escreva o comando SQL para adicionar a coluna Data de Admissão na tabela Funcionário.
c) Escreva o comando SQL para adicionar a coluna “codFunc” na tabela Empréstimo.
d) Escreva o comando SQL para adicionar a constraint de chave estrangeira da nova coluna criada
na tabela Empréstimo referenciando-a a tabela Funcionário.
e) Escreva os comandos SQL necessários para alterar a chave primária da tabela MULTA, de
modo que uma nova coluna denominada SEQ deverá fazer parte da chave juntamente com os
demais atributos.