Bonjour tout le monde,
Quelqu'un pourrait-il me rappeler les différents types d'objets sous PostgreSQL autre que les tables, les vues, les indexes ?
Aussi est-ce qu'un schéma est considéré comme un objet ?
Merci d'avance les gars !
Version imprimable
Bonjour tout le monde,
Quelqu'un pourrait-il me rappeler les différents types d'objets sous PostgreSQL autre que les tables, les vues, les indexes ?
Aussi est-ce qu'un schéma est considéré comme un objet ?
Merci d'avance les gars !
Bonjour,
Je me trompe ou c'est une question dans un cadre scolaire :D
database, tablespace, schema, table, vue, index, constraint, package, trigger sont des objets, puisqu'on peut les créer par CREATE et les supprimer par DROP, leur attribuer des droits (GRANT) ou les révoquer (REVOKE), les modifier (ALTER)...
On peut en ajouter d'autres : les séquences, les foreign data wrapper, les foreign serveurs, les foreign tables...
Tout depend de quel type d objet on parle...
objet relationnel donc, a l interieur d un schema d une base => TABLE, VUE, PROCEDURE, UDF...
objet non relationnel => schema, utilisateur, role, sequence....
Un schema, tout comme une base ne peut absolumemt pas etre considere comme un objet. C est un conteneur....
A +
Désolé de te le dire aussi sec, mais je pense que tu me connais.... Ce que tu dis est stupide... !
En effet si nous devons faire une analogie, le schéma correspond à peu de chose près à la pompeuse notion "d'espace de nom" dans les langages modernes, ce qu'autrefois on appelait plus simplement par librairie...
Et je te pose maintenant la question :
dans ces langages, cette notion (espace de nom) est-elle un objet ?
Bien évidemment non
CQFD !
C'est d'ailleurs ce que je me tue à tenter d'inculquer dans les cerveaux de mes étudiants....
À titre d'informations complémentaires : https://en.wikipedia.org/wiki/Namespace
A +
Les schémas et les collections sont surtout des ensembles d'objets, ils ne sont pas créés directement, mais indirectement. C'est la création du 1er objet du schéma qui crée le schéma