Chapitre 30. Schéma d'informations

Table des matières
30.1. Le schéma
30.2. Types de données
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

Le schéma d'informations consiste en un ensemble de vues contenant des informations sur les objets définis dans la base de données actuelle. Le schéma d'informations est défini dans le standard SQL et, du coup, est supposé portable et stable — contrairement aux catalogues système qui sont spécifiques à PostgreSQL et modelés suivant l'implémentation. Néanmoins, les vues du schéma d'informations ne contiennent pas d'information sur les fonctionnalités spécifiques à PostgreSQL ; pour cela, vous devez travailler avec les catalogues système ou d'autres vues spécifiques à PostgreSQL.

30.1. Le schéma

Le schéma d'informations est lui-même un schéma nommé information_schema. Ce schéma existe automatiquement dans toutes les bases de données. Le propriétaire de ce schéma est le propriétaire initial de la base de données du cluster et cet utilisateur a naturellement tous les droits sur ce schéma, incluant la possibilité de le supprimer (mais l'espace gagné ainsi sera minuscule).

Par défaut, le schéma d'informations n'est pas dans le chemin de recherche des schémas, donc vous avez besoin d'accéder à tous les objets qu'il contient via des noms qualifiés. Comme les noms de certains des objets du schéma d'information sont des noms génériques pouvant survenir dans les applications utilisateur, vous devez faire attention si vous placez le schéma d'information dans le chemin.