Tutorial de PostgreSQL, Modelo Relacional y SQL en Español
Enviado por loner1988 • 27 de Mayo de 2012 • 9.799 Palabras (40 Páginas) • 641 Visitas
Tutorial de PostgreSQL, Modelo
Relacional y SQL en Español
(Castellano)
Adaptación del original (C) 1999 por El equipo de
desarrollo de PostgreSQL, editado por Thomas
Lockhart, inicialmente traducido por Proyecto de
traducción al Español de la documentación de
PostgreSQL RDBMS (inicalmente versión 6.5,
adaptado a versión 8.4)
Aviso Legal: PostgreSQL es marca registrada ©
1996-2009 por el Postgres Global Development
Group.
Sumario
Postgres, desarrollada originalmente en el
Departamento de Ciencias de la Computación de la
Universidad de California en Berkeley, fue pionera
en muchos de los conceptos de bases de datos
relacionales orientadas a objetos que ahora
empiezan a estar disponibles en algunas bases de
datos comerciales. Ofrece suporte al lenguaje
SQL:2003, integridad de transacciones, y
extensibilidad de tipos de datos. PostgreSQL es un
descendiente de dominio público y código abierto
del código original de Berkeley.
Introducción
Este documento es el manual de usuario del
sistema de mantenimiento de bases de datos
PostgreSQL, originariamente desarrollado en la
Universidad de California en Berkeley. PostgreSQL
está basada en Postgres release 4.2. El proyecto
Postgres, liderado por el Porfesor Michael
Stonebraker, fue esponsorizado por diversos
organismos oficiales u oficiosos de los EEUU: la
Agencia de Proyectos de Investigación Avanzada de
la Defensa de los EEUU (DARPA), la Oficina de Investigación de la Armada (ARO), la Fundación
Nacional para la Ciencia (NSF), y ESL, Inc.
¿Qué es Postgres?
Los sistemas de mantenimiento de Bases de Datos relacionales tradicionales (DBMS,s) soportan
un modelo de datos que consisten en una colección de relaciones con nombre, que contienen
atributos de un tipo específico. En los sistemas comerciales actuales, los tipos posibles incluyen
numéricos de punto flotante, enteros, cadenas de caracteres, cantidades monetarias y fechas.
Está generalmente reconocido que este modelo será inadecuado para las aplicaciones futuras de
procesado de datos. El modelo relacional sustituyó modelos previos en parte por su "simplicidad
espartana". Sin embargo, como se ha mencionado, esta simplicidad también hace muy dificil la
Índice
Sumario
Introducción
¿Qué es Postgres?
Breve historia de Postgres
El proyecto Postgres de Berkeley
Postgres95
PostgreSQL
Terminología
Notación
Copyrights y Marcas Registradas
SQL
El Modelo de Datos Relacional
La Base de Datos de Proveedores y Artículos
Formalidades del Modelo Relacional de Datos
Dominios contra Tipos de Datos
Operaciones en el Modelo de Datos Relacional
Álgebra Relacional
Cálculo Relacional
Cálculo Relacional de Tuplas
Álgebra Relacional contra Cálculo Relacional
El Lenguaje SQL
SELECT
SELECT sencillas
Joins (Cruces)
Operadores Agregados
Agregación por Grupos
HAVING
Subconsultas
Unión, Intersección, Excepción
Definición de Datos (DDL)
CREATE TABLE
Tipos de Datos en SQL
CREATE INDEX
CREATE VIEW
DROP TABLE, DROP INDEX, DROP VIEW
Manipulación de Datos (DML)
INSERT INTO
UPDATE
DELETE
System Catalogs
SQL Embebido
Arquitectura
Empezando
Ejecución del Monitor Interactivo (psql)
Creación de una base de datos
Acceder a una base de datos
Eliminando bases de datos
El Lenguaje de consultas
implementación de ciertas aplicaciones. Postgres ofrece una potencia adicional sustancial al
incorporar los siguientes cuatro conceptos adicionales básicos en una vía en la que los usuarios
pueden extender fácilmente el sistema
tipos de datos
funciones
operadores
funciones de agregado
métodos de indexación
lenguajes procedurales
Otras características aportan potencia y flexibilidad adicional:
Consultas complejas (subconsultas, joins, etc.)
Integridad referencial (claves primarias y foráneas)
Restricciones (Constraints)
Disparadores (triggers)
Vistas (views)
Reglas (rules)
Integridad transaccional
Control de concurrencia multiversión
Estas características colocan a Postgres en la categoría de las Bases de Datos identificadas como
objeto-relacionales. Nótese que éstas son diferentes de las referidas como orientadas a objetos,
que en general no son bien aprovechables para soportar lenguajes de Bases de Datos
relacionales tradicionales. Postgres tiene algunas características que son propias del mundo de
las bases de datos orientadas a objetos. De hecho, algunas Bases de Datos comerciales han
incorporado recientemente características en las que Postgres fue pionera.
Además, debido a su licencia liberal, PostgreSQL puede ser usado, modificado, y distibuido por
cualquier persona para cualquier propósito sin cargo alguno, ya sea para un fin privado,
comercial o académico.
Breve historia de Postgres
El Sistema Gestor de Bases de Datos Relacionales Orientadas a Objetos conocido como
PostgreSQL (y brevemente llamado Postgres95) está derivado del paquete Postgres escrito en
Berkeley. Con cerca de una década de desarrollo tras él, PostgreSQL es el gestor de bases de
datos de código abierto más avanzado hoy en día, ofreciendo control de concurrencia multiversión,
soportando casi toda la sintaxis SQL (incluyendo subconsultas, transacciones, y tipos y
funciones definidas por el usuario), contando también con un amplio conjunto de enlaces con
lenguajes de programación (incluyendo C, C++, Java, perl, tcl y python).
El proyecto Postgres de Berkeley
La implementación del DBMS Postgres comenzó en 1986. Los conceptos iniciales para el sistema
fueron presentados en The Design of Postgres y la definición del modelo de datos inicial apareció
en ThePostgres Data Model. El diseño del sistema de reglas fue descrito en ese momento en The
Design of the Postgres Rules System. La lógica y arquitectura del gestor de almacenamiento
fueron detalladas enThe Postgres Storage System.
Postgres ha pasado
...