You are on page 1of 16

SQLPlus - Conexão como DBA

Nome do Usuário: System Senha: serverlab

Criação de TableSpace:
CREATE TABLESPACE TBS_CONTROLEACADEMICO DATAFILE 'DF_CONTROLEACADEMICO_01' SIZE 5M AUTOEXTEND ON NEXT 1M;

Obs: já criada.

Criação usuário:
CREATE USER ALUNOBD IDENTIFIED BY BD2006 DEFAULT TABLESPACE TBS_CONTROLEACADEMICO PROFILE DEFAULT QUOTA UNLIMITED ON TBS_CONTROLEACADEMICO ACCOUNT UNLOCK;

Obs: ALUNOBD deve ser substituído pelo seu nome

Direitos de acesso
GRANT CONNECT TO ALUNOBD GRANT SELECT ANY TABLE TO ALUNOBD GRANT CREATE ANY TABLE TO ALUNOBD

Conectando como ALUNOBD
CONNECT ALUNOBD/BD2006

Criar a tabela SALA:
CREATE TABLE SALA( Bloco CHAR(1) NOT NULL, NrSala NUMBER(3) NOT NULL, Qtde_Carteiras NUMBER(2) NOT NULL, CONSTRAINT PK_SALA PRIMARY KEY (Bloco, NrSala) );

Exibir a estrutura da tabela SALA:
Desc Sala;

Visualizar as restrições de integridade:
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, TABLE_NAME, SEARCH_CONDITION, R_CONSTRAINT_NAME FROM USER_CONSTRAINTS;

Alterar a tabela SALA:
-

alter table sala add nr_lampadas number(1); alter table sala modify nr_lampadas number(2) ; alter table sala drop column nr_lampadas; alter table sala set unused column nr_lampadas; alter table sala drop unused columns;

Criar a tabela Disciplina:
CREATE TABLE DISCIPLINA ( NrDisciplina NUMBER(5) NOT NULL, Nome VARCHAR2(40) NOT NULL, CargaHoraria VARCHAR2(40) NULL, Ind_Tipo_Aula CHAR(1) NOT NULL, Bloco char(1) NOT NULL, NrSala number(3) NOT NULL, constraint PK_DISCIPLIN PRIMARY KEY ( NrDisciplina), constraint FK_DISCIPLINA_PK_SALA FOREIGN KEY (Bloco, NrSala) REFERENCES SALA)

Desativar/Ativar uma restrição de integridade:
alter table disciplina disable CONSTRAINT FK_DISCIPLINA_PK_SALA; alter table disciplina enable CONSTRAINT FK_DISCIPLINA_PK_SALA;

Eliminar/criar uma restrição de integridade :
- alter table Disciplina drop CONSTRAINT

FK_DISCIPLINA_PK_SALA; - alter table Disciplina add CONSTRAINT FK_DISCIPLINA_PK_SALA FOREIGN KEY (Bloco, NrSala) REFERENCES SALA;

Inserção de Dados
INSERT INTO SALA VALUES ('L', 108, 10); √ INSERT INTO SALA VALUES ('L', 115, 30); √ INSERT INTO SALA VALUES ('L', 113, 32); √ INSERT INTO SALA ("BLOCO","NRSALA") VALUES ('L', 113); ⊗ INSERT INTO DISCIPLINA values (1,'Banco de Dados', 204, 'T','L', 115); √ INSERT INTO DISCIPLINA values (1, 'Arquitetura de Comp. ', 204, 'T','L', 113); ⊗

Inserção de Dados
INSERT INTO DISCIPLINA values (2, Arquitetura de Comp.', 204, 'T','L', 2); ⊗ INSERT INTO DISCIPLINA values (2, Arquitetura de Comp. ', 204, 'T','L', 113); √

Visualizando dados de outro usuário:
Select * from AlunoY.disciplina; ⊗

Exclusão de Dados
delete from SALA where bloco='L' and nrsala=113; ⊗

Alterando a chave estrangeira para exclusão em cascata:
alter table disciplina drop constraint fk_disciplina_pk_sala; alter table disciplina add constraint fk_disciplina_pk_sala foreign key(bloco,nrsala) references sala(bloco,nrsala) on delete cascade;

Excluindo em cascata:
delete from SALA where bloco='L' and nrsala=113; √

Criar visões (views)
create view Salas_Disciplinas as ( select sala.Bloco,sala.Nrsala, disciplina.Nome from sala,disciplina where sala.bloco=disciplina.bloco and sala.nrsala=disciplina.nrsala);

Consultar visões
select * from salas_disciplinas;

O tamanho do Banco de Dados
Soma dos campos x estimativa de registros X período Exemplo: Soma dos campos de 900 bytes x 500 registros/mês x 24 meses Depende ainda da disponibilidade de recurso financeiro
Investimento em hardware para projetar para mais ou menos tempo o tamanho da base.

-

Soma o total de tabelas a serem alocadas dentro de uma tablespace e tem-se o total para a Tablespace

-

Construa seu esquema: criar tablespace criar usuário criar tabelas sem restrições de integridade adicionar restrições de integridade criar visões

Bibliografia
Sistema de Banco de Dados
A. Silberschatz; H. F. Korth; S. Sudarschan. Makron Books, Terceira Edição, 2006.

Projeto de Banco de Dados - Uma Visão Prática
Felipe Machado; Maurício Abreu. 10a. Edição. Editora Érica, São Paulo, 2003.

Projeto de banco de Dados
Carlos Alberto Heuser. 3a. Edição, Sagra Luzzatto, Rio Grande do Sul, 2000.

Modelagem Conceitual e Projeto de banco de Dados
Paulo Cougo. Editora Campus, Rio de Janeiro, 1997.

Banco de Dados: Fundamentos, Projeto e Implementação
David M. Kroenke. Livros Técnicos e Científicos, Sexta Edição, 1999.