quinta-feira, 1 de outubro de 2015

exercicio resolvido

-script sql que construa as demandas solicitadas:

-criação de um usuario owner (schema / esquema) que será proprietário dos objetos dos objetos (tabelas,etc) da atividade.(videolar

-criar 1 usuario que terá um perfil de digitador c/ o seguinte nome ''dig01'' senha " clobo"

-criar 1 usuario que tera um perfil de gerente
c/ o seguinte nome "ger01"  senha "curitiba"

-o perfil digitador pode executar select, insert , update, delete via role nas tabelas de videolar.

-o perfil gerente pode somente select






resposta

create user videolar identified by lar;

 create table videolar.clientes(
 cpf number (10)primary key,
 Nom_cliente varchar2(30) not null,
 End_cliente varchar2(30) not null,
 Cidade varchar2(30) not null,
 Estado varchar2(30),
 Bairro varchar2(30),
 Telefone number (15)
 );

 create table videolar.genero(
 cod_genero number (10)primary key,
 nom_genero varchar2(30) not null
 );

 create table videolar.itens_locados(
 cod_locacao number (5),
 cod_filme number (10),
 valor_unitario number (10,2) not null
 );

alter table itens_locados add constraint item_PK primary key (cod_locacao,cod_filme);
alter table itens_locados add constraint locacao1_fk foreign key (cod_locacao) references locacao (cod_locacao);
alter table itens_locados add constraint fil_fk foreign key (cod_filme)  references filmes (cod_filme);

create table videolar.genero(
cod_genero number (10)primary key,
nom_genero varchar2(30) not null
);

create table videolar.locacao(
cod_locacao number (5)primary key,
cpf number (10),
data_locacao date not null,
data_devolucao date not null,
valor_total number (10,2)
);

alter table locacao add constraint locacao_fk foreign key (cpf) references clientes (cpf);

create table videolar.categoria(
cod_categoria number (5) primary key,
tipo_categoria varchar2(30),
valor_categoria number (10,2) null
);

alter table categoria add constraint ck_categoria check(tipo_categoria in ('OURO','PRATA','BRONZE'));

create table videolar.filmes(
cod_filme number (10)primary key,
cod_categoria number (5),
cod_genero number (5),
tit_filme varchar2(30),
ano_lancamento number (5),
tipo_midia varchar2(3) not null
);

alter table filmes add constraint cat_fk foreign key (cod_categoria) references categoria (cod_categoria);
alter table filmes add constraint gen_fk foreign key (cod_genero)references genero (cod_genero);
alter table filmes add constraint ck_midia check(tipo_midia in ('DVD','VHS'));

create table videolar.itens_locados(
cod_locacao number (5),
cod_filme number (10),
valor_unitario number (10,2) not null
);

alter table itens_locados add constraint item_PK primary key (cod_locacao,cod_filme);
alter table itens_locados add constraint locacao1_fk foreign key (cod_locacao) references locacao (cod_locacao);
alter table itens_locados add constraint fil_fk foreign key (cod_filme) references filmes (cod_filme);


insert into videolar.clientes values(10,'ANTONIO SERAFIN','RUA UVAIAS , 137','SAO PAULO','SP', 'SAUDE', 34528473);
insert into videolar.clientes values(20,'MARIA APARECIDA','RUA ANTONIO PRADO, 245','CAMPINAS','SP', 'SAO JOAQUIM', 87362390);
insert into videolar.clientes values(30,'JOSE AMADEU','RUA ALMIRANTE BARROSO, 512','SAO PAULO','SP', 'VILA FORMOSA', 98371235);
insert into videolar.clientes values(40,'CLAUDIO DA SILVA','RUA DA GLORIA, 9826','SAO PAULO','SP', 'VILA MARIANA', 54543972);
insert into videolar.filmes values(1,3,6,'LAGOA AZUL',1980,'VHS');
insert into videolar.filmes values(2,1,2,'HOME-ARANHA 3',2007,'DVD');
insert into videolar.filmes values(3,2,3,'PEQUENOS ESPIOES',2005,'DVD');
insert into videolar.filmes values(4,2,3,'SHREK',2005,'DVD');
insert into videolar.filmes values(5,3,1,'TITANIC',2002,'VHS');
insert into videolar.filmes values(6,3,6,'VIDAS PASSADAS',1997,'VHS');
insert into videolar.genero values (1,'DRAMA');
insert into videolar.genero values (2,'AVENTURA');
insert into videolar.genero values (3,'INFANTIL');
insert into videolar.genero value  (5,'COMEDIA');

COMMIT;

create role digitador;
create role gerente;
 

grant select,insert,update,delete on videolar.clientes to digitador;
grant select,insert,update,delete on videolar.genero to digitador;
grant select,insert,update,delete on videolar.locacao to digitador;
grant select,insert,update,delete on videolar.categoria to digitador;
grant select,insert,update,delete on videolar.filmes to digitador;
grant select,insert,update,delete on videolar.itens_locados to digitador;


grant digitador to dig01;


grant select on videolar.clientes to gerente;
grant select on videolar.genero to gerente;
grant select on videolar.categoria to gerente;
grant select on videolar.filmes to gerente;
grant select on videolar.itens_locados to gerente;
grant select on videolar.locacao to gerente;


grant connect to ger01;

grant connect to dig01;









Nenhum comentário:

Postar um comentário