Difference between revisions of "postgres/es"

From Lazarus wiki
Jump to navigationJump to search
Line 1: Line 1:
 
{{Postgres}}[[category:Castellano]][[category:Español]]
 
{{Postgres}}[[category:Castellano]][[category:Español]]
== Explicación global - interface con PostGreSQL ==  
+
== Descripción ==  
  
Se puede utilizar FreePascal para acceder a una base de datos PostGreSQL desde Linux. (para más información sobre PostGreSQL, visitar su página web).
+
Se puede utilizar FreePascal/Lazarus para acceder a un servidor de bases de datos (BB.DD). Si estás buscando más información sobre el paquete postgres en FPC,por favor visita el siguiente sitio [[postgres#PostgreSQL_package:_the_low_level_units]].
  
Realizar el interface es muy fácil, todo lo que necesitas para ello es compilar algunas unidades para posteriormente utilizarlas en el programa. Se necesita especificar el lugar donde se encuentra la librería cliente de PostGreSQL (libpq) cuando se procede a realizar la compilación y poco más.
+
Ventajas de PostgreSQL:
  
La unidad principal se llama '''postgres''', y normalmente es la única unit adicional que requiere que sea añadida en la clausula uses para lograr dicho interface.
+
* Se uso está muy difundido y se puede obtener fácilmente.
 +
* Muy estable y contiene un conjunto de características muy completo.
 +
* Licencia liberal (sin coste) en comparación con otras bases de datos.
 +
 
 +
Desventajas de PostgreSQL:
 +
 
 +
* Algunos hosters puede que no ofrezcan PostgreSQL.
 +
* No existen versiones embebidas.
 +
 
 +
Win64: por favor mira [[Windows Programming Tips#FPC 2.6.x/Lazarus warning|aquí]]si existen actualmente advertencias sobre no usar ciertas versiones FPC/Lazarus Win64.
  
 
== Requerimientos ==  
 
== Requerimientos ==  

Revision as of 14:59, 13 May 2015

Template:Postgres

Descripción

Se puede utilizar FreePascal/Lazarus para acceder a un servidor de bases de datos (BB.DD). Si estás buscando más información sobre el paquete postgres en FPC,por favor visita el siguiente sitio postgres#PostgreSQL_package:_the_low_level_units.

Ventajas de PostgreSQL:

  • Se uso está muy difundido y se puede obtener fácilmente.
  • Muy estable y contiene un conjunto de características muy completo.
  • Licencia liberal (sin coste) en comparación con otras bases de datos.

Desventajas de PostgreSQL:

  • Algunos hosters puede que no ofrezcan PostgreSQL.
  • No existen versiones embebidas.

Win64: por favor mira aquísi existen actualmente advertencias sobre no usar ciertas versiones FPC/Lazarus Win64.

Requerimientos

Se necesita al menos la versión 0.99.5 de FreePascal. Las cabeceras (headers) han sido portadas de la versión 6.3.1 de PostGreSQL. El uso de una versión anterior probablemente no funcione.

Instalación:

La unit postgres viene con los paquetes de FreePascal, y se distribuye junto con el compilador. Este contiene un directorio postgres con las units, un programa de test y un fichero make (makefile). En dicho directorio se puede editar el fichero make para establecer las variables que contiene para que estén acordes al sistema. Solo debes aportan una cosa:

  • El directorio donde reside la librería libpq que habitualmente se encuentra en /usr/local/pgsql/lib

Lo que se debe teclear

En primer lugar el mandato make que compilará las units y el programa:

make


Si la compilación se realiza con éxito, entonces podemos instalar el programa con el mandato:

make install

(Recordar establecer el valor correcto del directorio donde las units deben ser instaladas)

A continuación es interesante realizar un test del programa con el mandato:

make test

Esto realizará lo siguiente:

  • Ejecutar el programa de test testpg, el cual se ha portado del programa de ejemplo de la guía de programadores de PostGreSQL.
  • Ejecutar un script para crear una tabla dentro de la base de datos y rellenarla con datos. (el programa psql debería encontrarse en el PATH para que todo funcione bien). La base de datos que se utiliza por defecto es testdb.
  • Ejecutar el programa de testeo testemail.
  • Ejecutar un script en el shell para eliminar la tabla creada una vez que tenemos verificado el funcionamiento.


Con todo esto obtenemos un montón de mensajes en pantalla que nos aportarán mucha información y resultados. En caso de que algo vaya mal, el mandato make nos informará convenientemente.

Planes futuros:

El interface de PostGreSQL es una pura traducción de los ficheros de cabecera en C que tiene PostGreSQL. Esto significa que las funciones utilizadas están poco pascalizadas. Sería interesante tener un interface OOP al estilo de Delphi por lo que ya se está trabajando en ello.


Volver a Packages List