El catalogo pg_class
cataloga tablas y casi todo lo que tiene columnas o es similar a una tabla. Esto incluye índices (pero consulte también pg_index
), secuencias (pero ver también pg_sequence
), vistas, vistas materializadas, tipos compuestos y tablas TOAST; ver relkind
. A continuación, cuando nos referimos a todos estos tipos de objetos, hablamos de “relaciones“. No todas las columnas son significativas para todos los tipos de relaciones.
Tabla 51.11. pg_class
Columnas
Tipo de columna Descripción |
---|
Identificador de fila |
Nombre de la tabla, índice, vista, etc. |
El OID del espacio de nombres que contiene esta relación |
El OID del tipo de datos que corresponde al tipo de fila de esta tabla, si lo hay (cero para índices, que no tienen |
Para tablas con tipo, el OID del tipo compuesto subyacente, cero para todas las demás relaciones |
Dueño de la relación |
Si se trata de una tabla o un índice, el método de acceso utilizado (montón, árbol B, hash, etc.) |
Nombre del archivo en disco de esta relación; cero significa que esto es un “mapeado“ relación cuyo nombre de archivo de disco está determinado por el estado de bajo nivel |
El espacio de tabla en el que se almacena esta relación. Si es cero, el espacio de tabla predeterminado de la base de datos está implícito. (No tiene sentido si la relación no tiene un archivo en el disco). |
Tamaño de la representación en disco de esta tabla en páginas (de tamaño |
Número de filas activas en la tabla. Esta es solo una estimación utilizada por el planificador. Es actualizado por |
Número de páginas marcadas como visibles en el mapa de visibilidad de la tabla. Esta es solo una estimación utilizada por el planificador. Es actualizado por |
OID de la tabla TOAST asociada con esta tabla, 0 si no hay ninguna. La tabla TOAST almacena grandes atributos “fuera de línea“ en una mesa secundaria. |
Verdadero si se trata de una tabla y tiene (o ha tenido recientemente) índices |
Verdadero si esta tabla se comparte en todas las bases de datos del clúster. Solo ciertos catálogos del sistema (como |
|
|
Número de columnas de usuario en la relación (no se cuentan las columnas del sistema). Debe haber tantas entradas correspondientes en |
Número de |
Verdadero si la mesa tiene (o alguna vez tuvo) reglas; ver |
Verdadero si la tabla tiene (o alguna vez tuvo) disparadores; ver |
Verdadero si la tabla o el índice tiene (o alguna vez tuvo) hijos de herencia |
Verdadero si la tabla tiene habilitada la seguridad de nivel de fila; ver |
Verdadero si la seguridad de nivel de fila (cuando está habilitada) también se aplicará al propietario de la tabla; ver |
Verdadero si la relación está poblada (esto es cierto para todas las relaciones excepto algunas vistas materializadas) |
Columnas utilizadas para formar “identidad de réplica“ para filas: |
Verdadero si la tabla o el índice es una partición |
Para las nuevas relaciones que se escriben durante una operación DDL que requiere una reescritura de tabla, esto contiene el OID de la relación original; de lo contrario, 0. Ese estado solo es visible internamente; este campo nunca debe contener nada más que 0 para una relación visible para el usuario. |
Todos los ID de transacción anteriores a este han sido reemplazados por un permanente (“congelado“) ID de transacción en esta tabla. Esto se usa para rastrear si la mesa necesita ser aspirada para evitar que el ID de transacción se envuelva o para permitir |
Todos los ID de multixact anteriores a este han sido reemplazados por un ID de transacción en esta tabla. Esto se usa para rastrear si la mesa necesita ser aspirada para evitar el envolvente de ID multixida o para permitir |
Privilegios de acceso; consulte la Sección 5.7 para obtener más detalles |
Opciones específicas del método de acceso, como “palabra clave = valor“ instrumentos de cuerda |
Si la tabla es una partición (ver |
Varias de las banderas booleanas en pg_class
se mantienen perezosamente: se garantiza que son verdaderas si ese es el estado correcto, pero no se pueden restablecer a falso inmediatamente cuando la condición ya no es verdadera. Por ejemplo, relhasindex
está establecido por CREATE INDEX
, pero nunca lo borra DROP INDEX
. En lugar de, VACUUM
aclara relhasindex
si encuentra que la tabla no tiene índices. Esta disposición evita las condiciones de carrera y mejora la simultaneidad.
Anterior |
Hasta | próximo |
51.10. pg_cast |
Hogar | 51.12. pg_collation
|