30.41. views

A visão views contém todas visões definidas no banco de dados corrente. Somente são mostradas as visões que o usuário corrente pode acessar (seja por ser o dono ou por possuir algum privilégio). [1] [2] [3]

Tabela 30-39. Colunas de views

Nome Tipo de dado Descrição
table_catalog sql_identifier Nome do banco de dados que contém a visão (sempre o banco de dados corrente)
table_schema sql_identifier Nome do esquema que contém a visão
table_name sql_identifier Nome da visão
view definition character_data Expressão de consulta que define a visão (nulo se o usuário corrente não for o dono da visão)
check_option character_data Se aplica a uma funcionalidade não disponível no PostgreSQL
is_updatable character_data Ainda não implementado
is_insertable_into character_data Ainda não implementado

Exemplo: Consultar a visão views. [4]

=> CREATE VIEW vis_cardinal AS
->   SELECT *
->       FROM tbl_cardinal, tbl_info
->       WHERE cardinal=valor_cardinal;
CREATE VIEW

=> \x
Ativada a exibição expandida.

=> SELECT * FROM information_schema.views WHERE table_schema='public';

-[ LINHA 1 ]-------+---------------------------------------------------------------------------------
table_catalog      | teste
table_schema       | public
table_name         | vis_cardinal
view_definition    | SELECT tbl_cardinal.cardinal, tbl_info.valor_cardinal, tbl_info.valor_caractere\
                       FROM tbl_cardinal, tbl_info\
                      WHERE ((tbl_cardinal.cardinal)::integer = (tbl_info.valor_cardinal)::integer);
check_option       | NONE
is_updatable       |
is_insertable_into |

=> \x
Desativada a exibição expandida.

=> \d vis_cardinal

            Visão "public.vis_cardinal"
     Coluna      |      Tipo       | Modificadores
-----------------+-----------------+---------------
 cardinal        | cardinal_number |
 valor_cardinal  | cardinal_number |
 valor_caractere | character_data  |
Definição da visão:
 SELECT tbl_cardinal.cardinal, tbl_info.valor_cardinal, tbl_info.valor_caractere
   FROM tbl_cardinal, tbl_info
  WHERE tbl_cardinal.cardinal::integer = tbl_info.valor_cardinal::integer;

Notas

[1]

VIEWS — visão — Identifica as visões definidas neste catálogo acessíveis por um determinado usuário ou grupo. (ISO-ANSI Working Draft) Information and Definition Schemas (SQL/Schemata), ISO/IEC 9075-11:2003 (E) (N. do T.)

[2]

O rowset VIEWS identifica as visões definidas no catálogo acessíveis por um determinado usuário. Microsoft OLE DB Programmer's Reference (N. do T.)

[3]

A visão VIEWS contém uma linha para cada visão que pode ser acessada pelo usuário corrente no banco de dados corrente. A visão INFORMATION_SCHEMA.VIEWS é baseada nas tabelas do sistema sysobjects e syscomments. SQL Server Books Online (N. do T.)

[4]

Exemplo escrito pelo tradutor, não fazendo parte do manual original.

SourceForge.net Logo CSS válido!