Dans PostgreSQL, nous pouvons utiliser le information_schema.views
view pour renvoyer toutes les vues d'une base de données.
On peut aussi utiliser le \dv
psql pour faire la même chose.
Exemple de information_schema.views
Afficher
Voici un exemple d'utilisation de information_schema.views
view pour renvoyer une liste de vues dans la base de données actuelle :
SELECT
table_schema AS schema,
table_name AS view
FROM
information_schema.views
WHERE
table_schema NOT IN ('information_schema', 'pg_catalog')
ORDER BY
schema ASC,
view ASC;
Exemple de résultat :
+--------+----------------------------+ | schema | view | +--------+----------------------------+ | public | actor_info | | public | customer_list | | public | film_list | | public | nicer_but_slower_film_list | | public | sales_by_film_category | | public | sales_by_store | | public | staff_list | +--------+----------------------------+
Ici, nous avons exclu information_schema
et pg_catalog
afin que nous n'obtenions que des vues publiques et créées par les utilisateurs, et que nous ne soyons pas bombardés de vues système.
Dans cet exemple, j'étais dans la pagila
exemple de base de données.
Exemple de \dv
Commande
Lors de l'utilisation de psql, nous pouvons également utiliser le \dv
commande :
\dv
Exemple de résultat :
List of relations +--------+----------------------------+------+----------+ | Schema | Name | Type | Owner | +--------+----------------------------+------+----------+ | public | actor_info | view | postgres | | public | customer_list | view | postgres | | public | film_list | view | postgres | | public | nicer_but_slower_film_list | view | postgres | | public | sales_by_film_category | view | postgres | | public | sales_by_store | view | postgres | | public | staff_list | view | postgres | +--------+----------------------------+------+----------+ (7 rows)