Views | Controlo de acesso aos dados
-
Upload
carlos-pampulim-caldeira -
Category
Software
-
view
67 -
download
2
Transcript of Views | Controlo de acesso aos dados
ADMINISTRAÇÃO DE BASES DE DADOS
ViewsComo forma de controlo no acesso aos dados
Carlos Pampulim Caldeirawww.di.uevora.pt/~ccaldeira
www.ecologiadosdados.com/
www.linkedin.com/in/carlospampulimcaldeira
Tabela Colaborador
CREATE TABLE ccaldeira."Colaborador"("Número" INTEGER,"Nome" VARCHAR2(100) NOT NULL,"Data de Nascimento" DATE NOT NULL,"Vencimento" NUMBER NOT NULL, CONSTRAINT "cp_Colaborador" PRIMARY KEY ("Número"))TABLESPACE "UNIVERSIDADE";
CREATE VIEW ccaldeira."Funcionário" ("Número", "Nome", "Data de Nascimento") AS SELECT "Número", "Nome", "Data de Nascimento“ FROM ccaldeira."Colaborador"
Tabela Colaborador
SELECT * FROM ccaldeira."Funcionário";
INSERT INTO ccaldeira."Funcionário" VALUES(1000, 'Tótó', TO_DATE('2003/05/03'));
Erro na inserção dados pela view
Error starting at line : 15 in command -INSERT INTO ccaldeira."Funcionário" VALUES(1000, 'Tótó', TO_DATE('2003/05/03'))Error report -SQL Error: ORA-01400: cannot insert NULL into ("CCALDEIRA"."Colaborador"."Vencimento")01400. 00000 - "cannot insert NULL into (%s)"*Cause: An attempt was made to insert NULL into previously listed objects.*Action: These objects cannot accept NULL values.
UPDATE ccaldeira."Funcionário" SET "Nome" = 'Pato Malvado' WHERE "Número" = 999;
Log:1 rows updated.
SELECT * FROM ccaldeira."Colaborador";
View modifica tabela de base
CREATE VIEW ccaldeira."Funcionário" ("Número", "Nome", "Data de Nascimento","Ordenados<2000") AS SELECT "Número", "Nome", "Data de Nascimento", "Vencimento" FROM ccaldeira."Colaborador" WHERE "Vencimento" < 2000;
View Funcionário com partição horizontal
SELECT * FROM ccaldeira."Funcionário";
View Funcionário com partição horizontal