Capítulo 30. O esquema de informações

Sumário
30.1. O esquema
30.2. Tipos de dado
30.3. information_schema_catalog_name
30.4. applicable_roles
30.5. check_constraints
30.6. column_domain_usage
30.7. column_privileges
30.8. column_udt_usage
30.9. columns
30.10. constraint_column_usage
30.11. constraint_table_usage
30.12. data_type_privileges
30.13. domain_constraints
30.14. domain_udt_usage
30.15. domains
30.16. element_types
30.17. enabled_roles
30.18. key_column_usage
30.19. parameters
30.20. referential_constraints
30.21. role_column_grants
30.22. role_routine_grants
30.23. role_table_grants
30.24. role_usage_grants
30.25. routine_privileges
30.26. routines
30.27. schemata
30.28. sql_features
30.29. sql_implementation_info
30.30. sql_languages
30.31. sql_packages
30.32. sql_sizing
30.33. sql_sizing_profiles
30.34. table_constraints
30.35. table_privileges
30.36. tables
30.37. triggers
30.38. usage_privileges
30.39. view_column_usage
30.40. view_table_usage
30.41. views

O esquema de informações consiste em um conjunto de visões contendo informações sobre os objetos definidos no banco de dados corrente. O esquema de informações é definido no padrão SQL e, portanto, pode-se esperar que seja portável e permaneça estável — isto é diferente dos catálogos do sistema, que são específicos do PostgreSQL e modelados segundo interesses da implementação. Entretanto, as visões do esquema de informações não contêm informações sobre funcionalidades específicas do PostgreSQL; para obter este tipo de informação, é necessário consultar os catálogos do sistema e outras visões específicas do PostgreSQL. [1] [2] [3]

30.1. O esquema

Em si, o esquema de informações é um esquema chamado information_schema. Este esquema é criado, automaticamente, em todos os bancos de dados. O dono deste esquema é o usuário de banco de dados inicial do agrupamento e, naturalmente, este usuário possui todos os privilégios neste esquema, incluindo a capacidade de removê-lo (mas o ganho de espaço obtido com a remoção é mínimo).

Por padrão, o esquema de informações não está no caminho de procura de esquemas e, portanto, todos os seus objetos devem ser acessados através de nomes qualificados. Uma vez que alguns objetos do esquema de informações possuem nomes genéricos, que podem existir também nos aplicativos dos usuários, deve-se tomar cuidado se for desejado colocar o esquema de informações no caminho de procura.

Notas

[1]

Oracle — o Oracle não possui nenhuma das visões do esquema de informações, entretanto estas informações podem ser obtidas em outras visões de metadados. Em vez de TABLES é usado ALL_TABLES, em vez de COLUMNS é usado ALL_TAB_COLUMNS, e em vez de VIEWS é usado ALL_VIEWS. Em vez de TABLE_CONSTRAINTS, REFERENTIAL_CONSTRAINTS e CHECK_CONSTRAINTS, ú usado ALL_CONSTRAINTS. Oracle® Database SQL Reference 10g Release 1 (10.1) Part Number B10759-01 (N. do T.)

[2]

SQL Server — O Microsoft® SQL Server 2000 disponibiliza dois métodos para obter metadados: procedimentos armazenados do sistema e visões do esquema de informações. Estas visões fornecem uma visão interna, independente das tabelas do sistema, dos metadados do SQL Server. As visões do esquema de informações permitem que os aplicativos trabalhem de forma apropriada, mesmo quando são feitas mudanças significativas nas tabelas do sistema. As visões do esquema de informações incluídas no SQL Server estão em conformidade com as definições do padrão SQL-92 para o INFORMATION_SCHEMA. SQL Server Books Online (N. do T.)

[3]

DB2 — Cada banco de dados inclui um conjunto de tabelas de catálogo do sistema que descrevem a estrutura lógica e física dos dados, um arquivo de configuração contendo os valores dos parâmetros definidos para o banco de dados, e um registro de recuperação com as transações em andamento e transações arquiváveis. IBM Globalization - Terminology (N. do T.)

SourceForge.net Logo CSS válido!