PostgreSQL – Instalar base de datos de prueba booktown

Al comenzar el proceso de aprendizaje de PostgreSQL, el primer reto es instalar el motor de base de datos. Algo que podemos hacer de manera muy sencilla siguiendo el artículo: Instalar PostgreSQL en Centos. Pero una vez que hemos instalado PostgreSQL surge una primera interrogante. ¿Cómo puedo comenzar a prácticar partiendo de cero? Esta es probablemente es la pregunta por la que SQL Server proporciona su base de datos de prueba  AdventureWorks2012 que en un artículo previo explicamos como adjuntarse al servidor  o cómo Mysql que al instalarse incluye la base de datos de prueba: Sakila.

Para mala fortuna de quienes nos iniciamos en este motor, al instalar PostgreSQL no se incluye ninguna base de datos con la que podamos comenzar a realizar pruebas. Pero,  para solventar este problema en PgFoundry encontraremos el proyecto DbSamples que agrupa varias bases de datos disponibles para descargarse e integrarse con nuestro motor. En la página de este proyecto encontrarás la base de datos booktown que trataremos en este artículo.

Creando la base de datos de prueba booktown

BookTown es la primera base de datos de prueba que instalaremos en nuestro servidor PostgreSQL. Esta base de datos acompaña al libro Practical PostgreSql y puede descargarse libremente desde el sitio http://www.commandprompt.com/ppbook/booktown.sql. Adicional a la descarga recomiendo una lectura al libro pues ayudará a entender un poco más acerca de este motor de base de datos.

Comenzaremos entonces con la descarga del script de creación de la base de datos. Ejecutaremos nuestra terminal y descargamos el archivo de scripts con el siguiente comando:

wget http://www.commandprompt.com/ppbook/booktown.sql

Al comenzar la descarga la terminal mostrará lo siguiente:

--2013-06-19 20:50:06--  http://www.commandprompt.com/ppbook/booktown.sql
Resolviendo www.commandprompt.com... 69.168.55.30
Connecting to www.commandprompt.com|69.168.55.30|:80... conectado.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: 42875 (42K) [text/plain]
Saving to: `booktown.sql.1'

100%[======================================>] 42.875      66,8K/s   in 0,6s    

2013-06-19 20:50:07 (66,8 KB/s) - `booktown.sql.1' saved [42875/42875]

Muy bien, hemos descargado nuestro archivo de script y ahora procederemos a su ejecución para que se generen los objetos en nuestra base de datos. Para ello ejecutaremos el siguiente comando:

[~]$ psql -U USUARIODB template1 -f /home/edgar/booktown.sql

Es importante que UsuarioDb sea un usuario con permisos para la creación de Databases. Si tienes dudas puedes usar el usuario postgres. Una vez que comience el proceso de creación aparecerán diversas alertas, debido a que el script está hecho para la versión 8.2 de PostgreSql, esto realmente no supone un problema pues lo que nosotros necesitas es tener una base de datos con tablas y datos dónde probar consultas y crear funciones. En la terminal aparecerá algo como lo siguiente:

[edgar@centosvm ~]$ 

ADVERTENCIA: psql versión 8.4, servidor versión 9.2.
          Algunas características de psql pueden no funcionar.
Ahora está conectado a la base de datos «booktown».
COMMENT
psql:/home/edgar/booktown.sql:33: NOTICE:  CREATE TABLE / PRIMARY KEY creará el índice implícito «books_id_pkey» para la tabla «books»
CREATE TABLE
psql:/home/edgar/booktown.sql:41: ERROR:  no existe el lenguaje «C»
psql:/home/edgar/booktown.sql:49: ERROR:  error de sintaxis en o cerca de «LANCOMPILER»
LINE 1: ...LANGUAGE 'plpgsql' HANDLER "plpgsql_call_handler" LANCOMPILE...
                                                             ^
psql:/home/edgar/booktown.sql:70: ERROR:  no existe la relación «inventory»
CONTEXT:  compilación de la función PL/pgSQL «audit_bk» cerca de la línea 4
psql:/home/edgar/booktown.sql:91: ERROR:  no existe la relación «inventory»
CONTEXT:  compilación de la función PL/pgSQL «audit» cerca de la línea 4
psql:/home/edgar/booktown.sql:112: ERROR:  no existe la variable «$1»
LINE 3:   key ALIAS FOR $1;
                        ^
psql:/home/edgar/booktown.sql:133: ERROR:  no existe la variable «$1»
LINE 3:   key ALIAS FOR $1;
                        ^
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
psql:/home/edgar/booktown.sql:230: ERROR:  error de sintaxis en o cerca de «$1»
LINE 3:    RENAME $1 TO user_no;

Una vez finalizado el proceso de creación, podremos conectarnos a nuestro servidor PostgreSQL y nos encontraremos con nuestra base de datos de pruebas creada y lista para comenzar a aprender.

 

booktown

 

5 Trackbacks / Pingbacks

  1. Delphi – Ejecutar Sentencias SQL de PostgreSql usando ADO | Blog del Poli
  2. PostgreSQL – Paginar Resultados (DataSets, ResultSets) | Blog del Poli
  3. PostgreSQL – Crear tabla desde un Select | Blog del Poli
  4. MariaDb – Instalar base de datos de prueba Sakila | Blog del Poli
  5. Access – Ejecutar procedimientos almacenados de PostgreSql (Con vistas) | Blog del Poli

Deja un comentario