PostgreSQL
Equipo de Desarrollo PostgreSQL
Editado por
Thomas Lockhart
PostgreSQL
tiene Copyright © 1996-9 de Postgres Global Development Group.
Tabla de contenidos
Resumen
I.
Guía de Usuario
1.
Introduction
¿Qué es
Postgres
?
Breve historia de
Postgres
Acerca de esta versión
Recursos
Terminología
Notación
Y2K Statement (Informe sobre el efecto 2000)
Copyrights y Marcas Registradas
2.
Sintaxis SQL
Palabras Clave
Comentarios
Nombres
Constantes
Campos y Columnas
Operadores
Expresiones
3.
Data Types
Numeric Types
Monetary Type
Character Types
Date/Time Types
Boolean Type
Geometric Types
IP Version 4 Networks and Host Addresses
4.
Operadores
Lexical Precedence
Operadores generales
Operadores numéricos
Operadores geométricos
Operadores de intervalos de tiempo
Operadores IP V4 CIDR
Operdores IP V4 INET
5.
Functions
SQL Functions
Mathematical Functions
String Functions
Date/Time Functions
Formatting Functions
Geometric Functions
IP V4 Functions
6.
Conversión de tipos
Conceptos generales
Operadores
Funciones
Resultados de consultas
Consultas UNION
7.
Indices and Keys
Keys
Partial Indices
8.
Matrices
9.
Herencia
10.
Multi-Version Concurrency Control (Control de la Concurrencia Multi Versión)
Introducción
Aislamiento transaccional
Nivel de lectura cursada
Nivel de aislamiento serializable
Bloqueos y tablas
Bloqueo e índices
Chequeos de consistencia de datos en el nivel de aplicación
11.
Configurando su entorno
12.
Administración de una Base de Datos
Creación de Bases de Datos
Ubicaciones Alternativas de las Bases de Datos
Acceso a una Base de Datos
Destrucción de una Base de Datos
13.
Almacenamiento en disco
14.
Instrucciones SQL
ABORT
— Aborta la transaccion en curso
MODIFICAR GRUPO
— Añadir usuarios a un grupo, eliminar usuarios de un grupo
MODIFICAR TABLA
— Propiedades de las modificaciones de tablas
MODIFICAR USUARIO
— Modificar la información de la cuenta de usuario
BEGIN
— Comienza una transaccion en modo encadenado
CLOSE
— Cierra un cursor
CLUSTER
— Proporciona aviso de almacenaje agrupado (clustering) al servidor.
COMMIT
— Realiza la transacción actual
COPY
— Copia datos entre ficheros y tablas
CREATE AGGREGATE
— Define una nueva función de agregado
CREATE DATABASE
— Crea una nueva base de datos
CREATE FUNCTION
— Defines a new function
CREATE GROUP
— Crea un grupo nuevo
CREATE INDEX
— Constructs a secondary index
CREATE LANGUAGE
— Define un nuevo lenguaje para funciones
CREATE OPERATOR
— Define un nuevo operador de usuario
CREATE RULE
— Define una nueva regla
CREATE SEQUENCE
— Crea una nueva secuencia de generador de numeros
CREATE TABLE
— Crea una nueva tabla
CREATE TABLE AS
— Crea una nueva tabla
CREATE TRIGGER
— Crea un nuevo disparador
CREATE TYPE
— Define un nuevo tipo de datos base
CREAR USUARIO
— Creando un nuevo usuario de base de datos
CREAR VISTA
— Construir una tabla virtual
DECLARE
— Define un cursor para acceso a una tabla
DELETE
— Borra filas de una tabla
DROP AGGREGATE
— Elimina la definición de una función agregada
DROP DATABASE
— Elimina una base de datos existente
DROP FUNCTION
— Elimina una función de usuario escrita en C
DROP GROUP
— ELimina un grupo
DROP INDEX
— Elimina un indica de la base de datos
DROP LANGUAGE
— Elimina un lengueja procedural definido por el usuario
DROP OPERATOR
— Quita un operador de la base de datos
DROP RULE
— Quita una regla existente de la base de datos
DROP SEQUENCE
— Quita una secuencia existente
DROP TABLE
— Elimina tablas de una base de datos
DROP TRIGGER
— Borra la definición de un disparador
DROP TYPE
— Retira un tipo, definido por el usuario, de los catálogos del sistema
DROP USER
— Retira un usuario
DROP VIEW
— Retira una vista definida en una base de datos
END
— Lleva a cabo la transacción actual
EXPLAIN
— Shows statement execution plan
FETCH
— Selecciona filas usando un cursor
GRANT
— otorga privilegios de acceso a un usuario, un grupo o a todos los usuarios
INSERT
— Inserta filas nuevas en una tabla
LISTEN
— Recibir aviso de la notificación de una condición
LOAD
— Carga dinamicamente un fichero objeto
LOCK
— Explícitamente bloquea una tabla dentro de una transacción
MOVE
— Mueve la posición del cursor
NOTIFY
— Señala todos los "fronends" y "backends" a la escucha de una condición notify.
RESET
— Restaura los parámetros en tiempo de ejecución a sus valores por defecto para la sesión actual.
REVOKE
— Revoca el privilegio de acceso a un usuario, a un grupo o a todos los usuarios.
ROLLBACK
— Interrumpte la transacción en curso
SELECT
— Recupera registros desde una tabla o vista.
SELECT INTO
— Crear una nueva tabla a partir de una tabla o vista ya existente.
SET
— Fija parámetros de tiempo de ejecución para la sesión.
SHOW
— Muestra los parámetros en tiempo de ejecución de la sesión
TRUNCATE
— Vacia una tabla
UNLISTEN
— Deja de prestar atención a las notificaciones
UPDATE
— Substituye valores de columnas en una tabla
VACUUM
— Limpia y analiza una base de datos
Postgres
15.
Aplicaciones
createdb
— Crea una nueva base de datos
PostgreSQL
createlang
— Añade una nuevo lenguaje de programación a una base de datos
PostgreSQL
createuser
— Crea un nuevo usuario
PostgreSQL
dropdb
— Borra una base de datos
PostgreSQL
existente
droplang
— Borra un lenguaje de programación de una base de datos
PostgreSQL
dropuser
— Borra un usuario
Postgres
ecpg
— Embedded SQL C preprocessor (preprocesador C incorporado en SQL)
pgaccess
— Cliente gráfico interactivo de
Postgres
pgadmin
—
Postgres
es una herramienta de diseño y mantenimiento de bases de datos para Windows 95/98/NT
pg_dump
— Extract a
Postgres
database into a script file
pg_dumpall
— Extrae todas las bases de datos
Postgres
en un archivo de script
psql
—
PostgreSQL
interactive terminal
pgtclsh
—
Postgres
Cliente para shell TCL
pgtksh
—
Postgres
Shell gráfico para TCL/TK
vacuumdb
— Limpia y analiza una base de datos
PostgreSQL
16.
Aplicaciones del sistema
initdb
— Create a new
PostgreSQL
database installation
initlocation
— Create a secondary
PostgreSQL
database storage area
ipcclean
— Limpia la memoria compartida y los semáforos de "backends" abortados.
pg_passwd
— manipula el fichero plano de passwords.
pg_upgrade
— permite la actualización de una versión anterior sin tener que volver a recargar los datos.
postgres
— Ejecuta un proceso
Postgres
de usuario único
postmaster
— Ejecuta el servidor (backend)multiusuario de
Postgres
II.
Guía del Administrador
17.
Portes
Plataformas actualmente soportadas
Plataformas no soportadas
18.
Opciones de Configuración
Parámetros de configuración (
configure
)
Parámetros de construcción (
make
)
Soporte Local
Autenticación Kerberos
19.
Distribución del Sistema
20.
Instalación
Antes de comenzar
Procedimiento de Instalación
21.
Instalacion en Win32
Construccion de librerias
Instalacion de las librerias
Usando las librerias
22.
Entorno de tiempo de ejecución
Utilizando
Postgres
desde Unix
Iniciando
postmaster
Usando pg_options
23.
Seguridad
Autentificacion de Usuarios
Nombres de usuario y grupos
Control de Acceso
Funciones y Reglas
24.
Agregar y Eliminar Usuarios
25.
Gestión de Disco
Localizaciones Alternativas
26.
Gestión de una base de datos
Creación de una base de datos
Acceso a la base de datos
Destrucción de una base de datos
Copia de seguridad y restauración
27.
Tratamiento de problemas
Fallos de inicio de Postmaster
Problemas con la conexión del Cliente
Depuración de mensajes
28.
Recuperación de bases de datos
29.
Pruebas de regresión
Entorno de regresión
Estructura de directorios
Procedimiento para el test de regresión
Análisis de Regresión
Archivos de comparación específicos de la plataforma
30.
Notas de versiones
Version 6.5.3
Version 6.5.2
Version 6.5.1
Version 6.5
Version 6.4.2
Version 6.4.1
Version 6.4
Release 6.3.2
Release 6.3.1
Release 6.3
Release 6.2.1
Release 6.2
Release 6.1.1
Release 6.1
Release v6.0
Release v1.09
Release v1.02
Release v1.01
Release v1.0
Postgres95
Beta 0.03
Postgres95
Beta 0.02
Postgres95
Beta 0.01
Tiempos Resultantes
III.
Guía del Programador
31.
Architecture
Conceptos de Arquitectura de
Postgres
32.
Extensor
SQL
: Preludio
Como hacer extensible el trabajo
El Tipo de Sistema de
Postgres
Acerca de los Sistema de Catalogo de
Postgres
33.
Extendiendo
SQL
: Funciones
Funciones de Lenguaje de Consultas (
SQL
)
Funciones de Lenguaje Procedural
Funciones Internas
Funciones de Lenguaje Compilado (C)
Sobrecarga de funciones
34.
Extendiendo
SQL
: Tipos
Tipos Definidos por el Usuario
35.
Extending
SQL
: Operators
Operator Optimization Information
36.
Extensiones de
SQL
: Agregados
37.
El Sistema de Reglas de
Postgres
¿Qué es un Árbol de Query?
Las vistas y el Sistema de Reglas.
Reglas sobre INSERT, UPDATE y DELETE
Reglas y Permisos
Reglas contra Triggers
38.
Utilización de las Extensiones en los Índices
39.
GiST Indices
40.
Enlazando funciones de carga dinámica
ULTRIX
DEC OSF/1
SunOS 4.x
,
Solaris 2.x
y
HP-UX
41.
Triggers (disparadores)
Creación de Triggers
Interacción con el Trigger Manager
Visibilidad de Cambios en Datos
Ejemplos
42.
Server Programming Interface
Interface Functions
Interface Support Functions
Memory Management
Visibility of Data Changes
Examples
43.
Lenguajes Procedurales
Instalación de lenguajes procedurales
PL/pgSQL
PL/Tcl
IV.
Interfaces
44.
Funciones
45.
Objetos Grandes
Nota Histórica
Características de la Implementación
Interfaces
Funciones registradas Incorporadas
Accediendo a Objetos Grandes desde LIBPQ
Programa de Ejemplo
I.
CCVS API Functions
—
46.
libpq
Database Connection Functions
Query Execution Functions
Asynchronous Query Processing
Fast Path
Asynchronous Notification
Functions Associated with the COPY Command
libpq
Tracing Functions
libpq
Control Functions
Environment Variables
Sample Programs
47.
libpq C++ Binding
Control and Initialization
libpq++ Classes
Database Connection Functions
Query Execution Functions
Asynchronous Notification
Functions Associated with the COPY Command
48.
pgtcl
Comandos
Ejemplos
Información de referencia de comandos pgtcl
49.
Interfaz ODBC
Trasfondo
Aplicaciones
Windows
Instalación Unix
Ficheros de Configuración
ApplixWare
50.
JDBC Interface
Building the
JDBC
Interface
Preparing the Database for
JDBC
Using the Driver
Importing
JDBC
Loading the Driver
Connecting to the Database
Issuing a Query and Processing the Result
Performing Updates
Closing the Connection
Using Large Objects
Postgres
Extensions to the
JDBC
API
Further Reading
51.
Interfaz de Programación Lisp
V.
Guía del Desarrollador
52.
Codigo Fuente Postgres
Formateo
53.
Revisión de las características internas de PostgreSQL
El camino de una consulta
Cómo se establecen las conexiones
La etapa de traducción
El sistema de reglas de
Postgres
Planificador/optimizador
Ejecutor
54.
pg_options
55.
Optimización Genética de Consulta en Sistemas de Base de Datos
Planificador de consulta para un Problema Complejo de Optimización
Algoritmo Genéticos (
AG
)
Optimización Genética de Consultas (
GEQO
) en Postgres
Futuras Tareas de Implementación para el
OGEC
de
Postgres
56.
Protocolo Frontend/Backend
Introducción
Protocolo
Tipos de Datos de Mensajes
Formatos de Mensajes
57.
Señales de
Postgres
58.
gcc
Default Optimizations
59.
Interfaces de Backend
Formato de fichero
BKI
Comandos Generales
Macro Commands
Comandos de Depuración
Ejemplo
60.
Ficheros de páginas.
Estructura de la página.
Ficheros
Bugs
VI.
Tutorial
61.
SQL
El Modelo de Datos Relacional
Formalidades del Modelo Relacional de Datos
Operaciones en el Modelo de Datos Relacional
El Lenguaje
SQL
62.
Arquitectura
Postgres
Conceptos de arquitectura
63.
Empezando
Configurando el entorno
Ejecución del Monitor Interactivo (psql)
Administrando una Base de datos
64.
El Lenguaje de consultas
Monitor interactivo
Conceptos
Creación de una nueva clase
Llenando una clase con instancias
Consutar a una clase
Redireccionamiento de consultas SELECT
Joins entre clases
Actualizaciones
Borrados
Uso de funciones de conjunto
65.
Características Avanzadas de
SQL
en
Postgres
Herencia
Valores No-Atómicos
Time Travel (Viaje en el tiempo)
Más características avanzadas
VII.
Apéndices
UG1.
ayuda de fecha/hora
Zonas horarias
Historia
DG1.
El Repositorio del
CVS
Organización del árbol de
CVS
Tomando Las Fuentes Vía
CVS
Anónimo
Tomando Los Fuentes Vía
CVSup
DG2.
Documentación
Mapa de la documentación
El proyecto de documentación
Fuentes de la documentación
Haciendo documentaciones
Páginas man
Generación de copias impresas para v6.5
Herramientas
Otras herramientas
Bibliografía
Lista de tablas
3-1.
Postgres
Data Types
3-2.
Postgres
Function Constants
3-3.
Postgres
Numeric Types
3-4.
Postgres
Monetary Types
3-5.
Postgres
Character Types
3-6.
Postgres
Specialty Character Type
3-7.
PostgreSQL
Date/Time Types
3-8.
PostgreSQL
Date Input
3-9.
PostgreSQL
Month Abbreviations
3-10.
PostgreSQL
Day of Week Abbreviations
3-11.
PostgreSQL
Time Input
3-12.
PostgreSQL
Time Zone Input
3-13.
PostgresSQL
Special Date/Time Constants
3-14.
PostgreSQL
Date/Time Output Styles
3-15.
PostgreSQL
Date Order Conventions
3-16.
Postgres
Boolean Type
3-17.
Postgres
Geometric Types
3-18.
Postgres
IP Version 4 Types
3-19.
Postgres
IP Types Examples
4-1.
Orden de operadores (precedencia decreciente)
4-2.
Postgres
Operators
4-3.
Postgres
Operadores numéricos
4-4.
Postgres
Operadores geométricos
4-5.
Postgres
Operadores de intervalos de tiempo
4-6.
Postgres
Operadores IP V4 CIDR
4-7.
Postgres
Operdores IP V4 INET
5-1.
SQL Functions
5-2.
Mathematical Functions
5-3.
SQL92
String Functions
5-4.
String Functions
5-5.
Date/Time Functions
5-6.
Formatting Functions
5-7.
Format-pictures for date/time to_char() version.
5-8.
Suffixes for format-pictures for date/time to_char() version.
5-9.
Format-pictures for number (int/float/numeric) to_char() version.
5-10.
The to_char() examples.
5-11.
Geometric Functions
5-12.
Geometric Type Conversion Functions
5-13.
Geometric Upgrade Functions
5-14.
Postgres
IP V4 Functions
10-1.
Niveles de aislamiento de
Postgres
14-1.
Contenidos de un fichero binario de copy
17-1.
plataformas soportadas
17-2.
Posiblemente Plataformas incompatibles
18-1.
Ejemplos de Parámetros de Kerberos
32-1.
Sistema de Catalogos de Postgres
33-1.
Tipos de C equivalentes para los tipos internos de
Postgres
38-1.
Esquema de un Índice
38-2.
Estrategias B-tree
38-3.
Esquema de
pg_amproc
48-1.
Comandos
pgtcl
57-1.
Señales
Postgres
60-1.
Muestra de Dibujo de Página
UG1-1.
Zonas de tiempo reconocidas por
Postgres
UG1-2.
Zonas Horarias Australianas de
Postgres
DG2-1.
Documentación de
Postgres
Tabla de figuras
19-1.
Distribución de los archivos de
Postgres
31-1.
Cómo se establece una conexión
32-1.
El principal sistema de catalogo de
Postgres
62-1.
Como se establece una conexión
Tabla de ejemplos
14-1.
Ejemplo de combinación circular de regals.
22-1.
Archivo pg_options
53-1.
Una SELECT sencilla
61-1.
La Base de Datos de Proveedores y Artículos
61-2.
Una Inner Join (Una reunión Interna)
61-3.
Una consulta utilizando Álgebra Relacional
61-4.
Query sencilla con cualificación
61-5.
Aggregates
61-6.
Agregados
61-7.
Having
61-8.
Subselect
61-9.
Union, Intersect, Except
61-10.
Creación de una tabla
61-11.
Create Index
Siguiente
Resumen