PostgreSQL
Equipo de Desarrollo PostgreSQL
Aviso Legal
Cubre la v6.5 para entrega en general
Tabla de contenidos
Resumen
I.
Gu�a de Usuario
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
Sintaxis SQL
Palabras Clave
Comentarios
Nombres
Constantes
Campos y Columnas
Operadores
Expresiones
Data Types
Numeric Types
Monetary Type
Character Types
Date/Time Types
Boolean Type
Geometric Types
IP Version 4 Networks and Host Addresses
Operadores
Lexical Precedence
Operadores generales
Operadores num�ricos
Operadores geom�tricos
Operadores de intervalos de tiempo
Operadores IP V4 CIDR
Operdores IP V4 INET
Funciones
Funciones SQL
Funciones Matem�ticas
String Functions
Funciones de Fecha/Hora
Funciones de Formato
Funciones Geom�tricas
Funciones PostgresIP V4
Conversi�n de tipos
Conceptos generales
Operadores
Funciones
Resultados de consultas
Consultas UNION
Indices and Keys
Keys
Partial Indices
Matrices
Herencia
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
Configurando su entorno
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
Almacenamiento en disco
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
— Construir un �ndice secundario.
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
— Muestra el plan de ejecuci�n de la sentencia
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
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
— Extrae una base de datos
Postgres
a un fichero de script
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
Aplicaciones del sistema
initdb
— Crea una nueva instalaci�n de la base de datos de
PostgreSQL
initlocation
— Crea un �rea de almacenamiento secundario para la base de datos de
PostgreSQL
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
Portes
Plataformas actualmente soportadas
Plataformas no soportadas
Opciones de Configuraci�n
Par�metros de configuraci�n (
configure
)
Par�metros de construcci�n (
make
)
Soporte Local
Autenticaci�n Kerberos
Distribuci�n del Sistema
Instalaci�n
Antes de comenzar
Procedimiento de Instalaci�n
Instalacion en Win32
Construccion de librerias
Instalacion de las librerias
Usando las librerias
Entorno de tiempo de ejecuci�n
Utilizando
Postgres
desde Unix
Iniciando
postmaster
Usando pg_options
Seguridad
Autentificacion de Usuarios
Nombres de usuario y grupos
Control de Acceso
Funciones y Reglas
Agregar y Eliminar Usuarios
Gesti�n de Disco
Localizaciones Alternativas
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
Tratamiento de problemas
Fallos de inicio de Postmaster
Problemas con la conexi�n del Cliente
Depuraci�n de mensajes
Recuperaci�n de bases de datos
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
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
Version 6.3.2
Version 6.3.1
Version 6.3
Version 6.2.1
Version 6.2
Version 6.1.1
Version 6.1
Version v6.0
Version v1.09
Version v1.02
Version v1.01
Version v1.0
Postgres95
Beta 0.03
Postgres95
Beta 0.02
Postgres95
Beta 0.01
Tiempos Resultantes
III.
Gu�a del Programador
Arquitectura
Conceptos de Arquitectura de
Postgres
Extensor
SQL
: Preludio
Como hacer extensible el trabajo
El Tipo de Sistema de
Postgres
Acerca de los Sistema de Catalogo de
Postgres
Extendiendo
SQL
: Funciones
Funciones de Lenguaje de Consultas (
SQL
)
Funciones de Lenguaje Procedural
Funciones Internas
Funciones de Lenguaje Compilado (C)
Sobrecarga de funciones
Extendiendo
SQL
: Tipos
Tipos Definidos por el Usuario
Extenediendo
SQL
: Operadores
Informaci�n de optimizaci�n de operador
Extensiones de
SQL
: Agregados
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 frente triggers
Utilizaci�n de las Extensiones en los �ndices
GiST Indices
Enlazando funciones de carga din�mica
ULTRIX
DEC OSF/1
SunOS 4.x
,
Solaris 2.x
y
HP-UX
Triggers (disparadores)
Creaci�n de Triggers
Interacci�n con el Trigger Manager
Visibilidad de Cambios en Datos
Ejemplos
Server Programming Interface
Interface Functions
Interface Support Functions
Memory Management
Visibility of Data Changes
Examples
Lenguajes Procedurales
Instalaci�n de lenguajes procedurales
PL/pgSQL
PL/Tcl
IV.
Interfaces
Funciones
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
—
libpq
Funciones de Conexi�n a la Base de Datos
Funciones de Ejecuci�n de Consultas
Procesamiento As�ncrono de Consultas
Ruta R�pida
Notificaci�n As�ncrona
Funciones Asociadas con el Comando COPY
Funciones de Trazado de
libpq
Funciones de control de
libpq
Variables de Entorno
Programas de Ejemplo
libpq C++ Binding
Control e Inicializaci�n
Clases de libpq++
Funciones de Conexi�n a la Base de Datos
Funciones de Ejecuci�n de las Consultas
Notificaci�n As�ncrona
Funciones Asociadas con el Comando COPY.
pgtcl
Comandos
Ejemplos
Informaci�n de referencia de comandos pgtcl
Interfaz ODBC
Trasfondo
Aplicaciones
Windows
Instalaci�n Unix
Ficheros de Configuraci�n
ApplixWare
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
Interfaz de Programaci�n Lisp
V.
Gu�a del Desarrollador
Codigo Fuente Postgres
Formateo
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
pg_options
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
Protocolo Frontend/Backend
Introducci�n
Protocolo
Tipos de Datos de Mensajes
Formatos de Mensajes
Se�ales de
Postgres
gcc
Default Optimizations
Interfaces de Backend
Formato de fichero
BKI
Comandos Generales
Macro Commands
Comandos de Depuraci�n
Ejemplo
Ficheros de p�ginas.
Estructura de la p�gina.
Ficheros
Bugs
VI.
Tutorial
SQL
El Modelo de Datos Relacional
Formalidades del Modelo Relacional de Datos
Operaciones en el Modelo de Datos Relacional
El Lenguaje
SQL
Arquitectura
Postgres
Conceptos de arquitectura
Empezando
Configurando el entorno
Ejecuci�n del Monitor Interactivo (psql)
Administrando una Base de datos
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 (uniones) entre clases
Actualizaciones
Borrados
Uso de funciones de conjunto
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
Siguiente
Resumen