Projeto de banco de dados
Lis Sulmont
Curriculum Manager
SUM(), AVG(), COUNT(), MIN(), MAX(), GROUP BY, etc.WHERE, HAVING, UNIQUE, NOT NULL, AND, OR,>,<, etc.GRANT privilege(s) ou REVOKE privilege(s)
ON object
TO role ou FROM role
SELECT, INSERT, UPDATE, DELETE, etc. $$\nsql\nGRANT UPDATE ON ratings TO PUBLIC; \n\n$$\nsql\nREVOKE INSERT ON films FROM db_user;\n\n
UPDATE films SET kind = 'Dramatic' WHERE kind = 'Drama';
Nem todas as visualizações podem ser atualizadas.
INSERT INTO films (code, title, did, date_prod, kind)
VALUES ('T_601', 'Yojimbo', 106, '1961-06-16', 'Drama');
Nem todas as visualizações podem ser inseridas
INSERT INTO films (code, title, did, date_prod, kind)
VALUES ('T_601', 'Yojimbo', 106, '1961-06-16', 'Drama');
Nem todas as visualizações podem ser inseridas
DROP VIEW view_name [ CASCADE | RESTRICT ];
RESTRICT (padrão): retorna um erro se houver objetos que dependem da visualizaçãoCASCADE: elimina a visualização e qualquer objeto que dependa dessa visualizaçãoCREATE OR REPLACE VIEW view_name AS new_query
view_name, ela será substituída.new_query tem que gerar os mesmos nomes de colunas, ordem e tipos de dados que a consulta antigaSe esses critérios não puderem ser atendidos, descarte a visualização existente e crie uma nova.
ALTER VIEW [ IF EXISTS ] name ALTER [ COLUMN ] column_name SET DEFAULT expression
ALTER VIEW [ IF EXISTS ] name ALTER [ COLUMN ] column_name DROP DEFAULT
ALTER VIEW [ IF EXISTS ] name OWNER TO new_owner
ALTER VIEW [ IF EXISTS ] name RENAME TO new_name
ALTER VIEW [ IF EXISTS ] name SET SCHEMA new_schema
ALTER VIEW [ IF EXISTS ] name SET ( view_option_name [= view_option_value] [, ... ] )
ALTER VIEW [ IF EXISTS ] name RESET ( view_option_name [, ... ] )
Projeto de banco de dados