FT/ROSI/DPS/ISS/EMA
27/05/2017 1/27 841050908
Documentation PostgreSQL 7.4.8
Tableau 43-1. Catalogues système
Nom du catalogue
Contenu
pg_aggregate
fonctions d'agrégat
pg_am
méthodes d'accès aux index
pg_amop
opérateurs des méthodes d'accès
pg_amproc
procédures de support des méthodes d'accès
pg_attrdef
valeurs par défaut des colonnes
pg_attribute
colonnes des tables (<< attributs >>)
pg_cast
conversions de types de données (cast)
pg_class
tables, index, séquences (<< relations >>)
pg_constraint
contraintes de vérification, contraintes unique, contraintes de clés primaires, contraintes de
clés étrangères
pg_conversion
informations de conversions de codage
pg_database
bases de données de l'installation PostgreSQL
pg_depend
dépendances entre objets de la base de données
pg_description
descriptions ou commentaires des objets de base de données
pg_group
groupes d'utilisateurs de la base de données
pg_index
informations supplémentaires des index
pg_inherits
hiérarchie d'héritage de tables
pg_language
langages pour écrire des fonctions
pg_largeobject
gros objets
pg_listener
support de notification asynchrone
pg_namespace
schémas
pg_opclass
classes d'opérateurs de méthodes d'accès aux index
pg_operator
opérateurs
pg_proc
fonctions et procédures
pg_rewrite
règles de réécriture de requêtes
pg_shadow
utilisateurs de la base de données
pg_statistic
statistiques de l'optimiseur de requêtes
pg_trigger
déclencheurs
pg_type
types de données
43.2. pg_aggregate
Le catalogue pg_aggregate stocke les informations sur les fonctions d'agrégat. Une fonction d'agrégat est
une fonction qui opère sur un ensemble de données (typiquement une colonne de chaque ligne qui correspond à
une condition de requête) et retourne une valeur unique calculée à partir de toutes ces valeurs. Les fonctions
d'agrégat classiques sont sum (somme), count (compteur) et max (plus grande valeur). Chaque entrée dans
pg_aggregate est une extension d'une entrée dans pg_proc. L'entrée de pg_proc décrit le nom de
l'agrégat, les types de données d'entrée et de sortie, et d'autres informations des fonctions ordinaires.
Tableau 43-2. Les colonnes de pg_aggregate
FT/ROSI/DPS/ISS/EMA
27/05/2017 2/27 841050908
Nom
Type
Références
Description
aggfnoid
regproc
pg_proc.oid
OID pg_proc de la fonction d'agrégat
aggtransfn
regproc
pg_proc.oid
fonction de transition
aggfinalfn
regproc
pg_proc.oid
fonction finale (zéro s'il n'y en a pas)
aggtranstype
oid
pg_type.oid
Type de la donnée interne de transition (état) de la fonction
d'agrégat
agginitval
text
Valeur initiale de la fonction de transition. C'est un champ texte
qui contient la valeur initiale dans sa représentation externe en
chaîne de caractères. Si la valeur est nulle, la valeur d'état de
transition est initialement nulle.
43.3. pg_am
Le catalogue pg_am enregistre les informations sur les méthodes d'accès aux index. Il y a une ligne pour chaque
méthode d'accès supportée par le système.
Tableau 43-3. Colonnes de pg_am
Nom
Type
Références
amname
name
amowner
int4
pg_shadow.usesysid
amstrategies
int2
amsupport
int2
amorderstrategy
int2
amcanunique
bool
amcanmulticol
bool
amindexnulls
bool
amconcurrent
bool
amgettuple
regproc
pg_proc.oid
aminsert
regproc
pg_proc.oid
ambeginscan
regproc
pg_proc.oid
amrescan
regproc
pg_proc.oid
amendscan
regproc
pg_proc.oid
ammarkpos
regproc
pg_proc.oid
amrestrpos
regproc
pg_proc.oid
ambuild
regproc
pg_proc.oid
ambulkdelete
regproc
pg_proc.oid
FT/ROSI/DPS/ISS/EMA
27/05/2017 3/27 841050908
Nom
Type
Références
amvacuumcleanup
regproc
pg_proc.oid
amcostestimate
regproc
pg_proc.oid
Une méthode d'accès qui supporte les colonnes multiples (qui a amcanmulticol à vrai) doit supporter
l'indexation des valeurs nulles dans les colonnes autres que la première, parce que l'optimiseur de requêtes
supposera que le parcours d'index peut être utilisé pour les requêtes portant seulement sur la ou les première(s)
colonne(s). Par exemple, supposons un index sur (a,b) et une requête contenant WHERE a = 4. Le système
supposera que le parcours d'index peut être utilisé pour balayer les lignes pour lesquelles a = 4, ce qui est faux
si l'index omet les lignes pour lesquelles b est nul. Il est cependant possible d'omettre les lignes dont la première
colonne d'index est nulle. (GiST le fait). amindexnulls ne doit être mis à vrai que si la méthode d'accès
indexe toutes les lignes, y compris toute combinaison de valeurs nulles.
43.4. pg_amop
Le catalogue pg_amop stocke les informations sur les opérateurs associés aux classes d'opérateurs de méthodes
d'accès aux index. Il y a une ligne pour chaque opérateur qui est membre d'une classe d'opérateurs.
Tableau 43-4. Colonnes de pg_amop
Nom
Type
Références
Description
amopclaid
oid
pg_opclass.oid
La classe d'opérateur d'index de cette entrée.
amopstrategy
int2
Numéro de stratégie d'opérateur
amopreqcheck
bool
Une entrée trouvée dans l'index doit être revérifiée.
amopopr
oid
pg_operator.oid
OID de l'opérateur
43.5. pg_amproc
Le catalogue pg_amproc enregistre des informations sur les procédures de support associées aux classes
d'opérateurs de méthodes d'accès. Il y a une ligne pour chaque procédure de support appartenant à une classe
d'opérateur.
Tableau 43-5. Colonnes de pg_amproc
Nom
Type
Références
Description
amopclaid
oid
pg_opclass.oid
La classe d'opérateurs d'index de cette entrée
amprocnum
int2
Numéro de procédure de support
amproc
regproc
pg_proc.oid
OID de la procédure
43.6. pg_attrdef
Le catalogue pg_attrdef stocke les valeurs par défaut des colonnes. Les informations principales des
colonnes sont stockées dans pg_attribute (voir plus loin). Seules les colonnes pour lesquelles une valeur
par défaut est explicitement spécifiée (quand la table est créée ou quand une colonne est ajoutée) ont une entrée
dans pg_attrdef.
Tableau 43-6. Colonnes de pg_attrdef
FT/ROSI/DPS/ISS/EMA
27/05/2017 4/27 841050908
Nom
Type
Références
Description
adrelid
oid
pg_class.oid
La table de cette colonne.
adnum
int2
pg_attribute.attnum
Numéro de la colonne
adbin
text
Représentation interne de la valeur par défaut de la colonne
adsrc
text
Une représentation lisible de la valeur par défaut
43.7. pg_attribute
Le catalogue pg_attribute stocke les informations sur les colonnes des tables. Il y a exactement une ligne
de pg_attribute pour chaque colonne de chaque table de la base de données. (Il y a aussi des attributs pour
les index et pour d'autres objets. Voir pg_class.)
Le terme attribut est équivalent à colonne et est utilisé pour des raisons historiques.
Tableau 43-7. Colonnes de pg_attribute
Nom
Type
Références
Description
attrelid
oid
pg_class.oid
La table de cette colonne
attname
name
Le nom de la colonne
atttypid
oid
pg_type.oid
Le type de données de cette colonne
attstattarget
int4
attstattarget contrôle le niveau de détail des statistiques
accumulées pour cette colonne par ANALYZE. Une valeur de zéro
indique qu'aucune statistique ne doit être collectée. Une valeur
négative indique d'utiliser l'objectif de statistiques par défaut. Le
sens exacte d'une valeur positive dépend du type de données. Pour
les données scalaires, attstattarget est à la fois le nombre
visé de << valeurs les plus courantes >> et le nombre visé
d'histogrammes à créer.
attlen
int2
Une copie de pg_type.typlen pour le type de cette colonne.
attnum
int2
Le numéro de la colonne. Les colonnes ordinaires sont
numérotées en commençant par 1. Les colonnes système, comme
les oid, ont des numéros négatifs arbitraires.
attndims
int4
Nombre de dimensions, si la colonne est de type tableau, sinon 0.
(Pour l'instant, le nombre de dimensions des tableaux n'est pas
contrôlé, donc une valeur autre que zéro indique que << c'est un
tableau >>.)
attcacheoff
int4
Toujours -1 sur disque, mais peut être mis à jour, en mémoire,
pour mettre en cache l'emplacement de l'attribut dans la ligne.
atttypmod
int4
atttypmod des données spécifiques au type de données précisé
lors de la création de la table (par exemple, la taille maximale
d'une colonne de type varchar). Il est transmis à des fonctions
spécifiques au type d'entrée de données et de vérification de taille.
La valeur est généralement de -1 pour les types de données qui
n'ont pas besoin de atttypmod.
attbyval
bool
Une copie de pg_type.typbyval pour ce type de données.
attstorage
char
Contient normalement une copie de pg_type.typstorage
pour ce type de données. Pour les types de données TOASTables,
cette valeur peut être modifiée après la création de la colonne
pour contrôler la règle de stockage.
attisset
bool
Vaut vrai si cet attribut est un ensemble. Dans ce cas, ce qui est
FT/ROSI/DPS/ISS/EMA
27/05/2017 5/27 841050908
Nom
Type
Références
Description
réellement stocké dans l'attribut est l'OID d'une ligne dans le
catalogue pg_proc. La ligne de pg_proc contient la chaîne de
requête qui définit cet ensemble, c'est-à-dire la requête à exécuter
pour obtenir l'ensemble. Donc, atttypid (voir plus haut) fait
référence au type de données retourné par cette requête mais la
taille réelle de cet attribut est celle d'un oid. --- Au moins en
théorie. Tout cela est probablement cassé de nos jours.
attalign
char
Contient une copie de pg_type.typalign pour le type de
cette colonne.
attnotnull
bool
Indique une contrainte de colonne non nulle. Il est possible de
changer cette colonne pour activer ou désactiver cette contrainte.
atthasdef
bool
Indique que cette colonne a une valeur par défaut. Dans ce cas, il
y aura une entrée correspondante dans le catalogue
pg_attrdef pour définir cette valeur.
attisdropped
bool
Indique que cette colonne a été supprimée et n'est plus valide.
Une colonne supprimée est toujours présente physiquement dans
la table, mais elle est ignorée par l'analyseur de requête et ne peut
être accédée en SQL.
attislocal
bool
Cette colonne est définie localement dans la relation. Notez
qu'une colonne peut être définie localement et héritée
simultanément.
attinhcount
int4
Nombre d'ancêtres directs de cette colonne. Une colonne qui a un
nombre d'ancêtres différent de zéro ne peut être supprimée ni
renommée.
43.8. pg_cast
Le catalogue pg_cast stocke les chemins de conversion de type de donnée, qu'ils soient par défaut ou définis
avec la commande CREATE CAST.
Tableau 43-8. Colonnes de pg_cast
Nom
Type
Références
Description
castsource
oid
pg_type.oid
OID du type de données source
casttarget
oid
pg_type.oid
OID du type de données en sortie
castfunc
oid
pg_proc.oid
OID de la fonction à utiliser pour faire cette conversion. Vaut Zéro si
les types de données sont binairement compatibles (c'est-à-dire si
aucune opération n'est nécessaire pour effectuer la transformation).
castcontext
char
Indique dans quel contexte la conversion peut être utilisée. e si seules
les conversions explicites sont autorisées (avec CAST, :: ou la
syntaxe d'appel de fonction). a si les conversions implicites lors de
l'affectation à une colonne sont autorisées, en plus des conversions
explicites. i si les conversions implicites dans les expressions sont
autorisées en plus des autres cas.
43.9. pg_class
Le catalogue pg_class catalogue les tables, et à peu près tout ce qui a des colonnes ou qui ressemble de près
ou de loin à une table. Cela inclut les index (mais il faut aussi aller voir dans pg_index), les séquences, les
1 / 27 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !