Conexion a una base de datos Ingres con PHP

última actualización el 8 de marzo de 2009, 19:54 por Carlos-vialfa
Publicado por Carlos-vialfa
Este truco ha sido sacado de la siguiente documentacion de Ingres:
- Ingres® 2006 Release 2 for Windows Quick Start Guide (qs_windows.pdf)
- Ingres® 2006 Release 2 for Linux Quick Start Guide (qs_linux.pdf)



Descargar PECL


- Windows (driver) http://pecl4win.php.net/ext.php/php_ingres.dll
- Linux & Unix (código fuente) http://pecl.php.net/package/ingres

Instalación


Bajo windows
1. Copia el archivo php_ingres.dll en el directorio de las extensiones PHP
2. Edita tu archivo php.ini y añade la siguiente linea:
extension=php_ingres.dll

Bajo Linux y Unix
1. Ubica el directorio donde se encuentra el comando phpize o php-config
En algunas distribuciones de Linux es necesario cambiar de nombre a estos archivos para evitar conflictos. Para compilar la biblioteca PECL Ingres es necesario un compilador.
2. Asegurate de que la variable II_SYSTEM es una variable valorizada.

echo $II_SYSTEM


3. Desplazate hasta el directorio que contiene el codigo fuente de la extensión
4. Genera la configuración para la extensión
phpize


5. Genera el Makefile
./configure --with-ingres


6. Compila la extensión
make


7. Instala la extensión
make install


8. Edita el archivo php.ini y añade la linea extension=ingres.so
9. Si utilizas Apache, utiliza la directiva User del httpd.conf para asegurarte de que Apache trabaja bien con un usuario Ingres válido

Apache para Linux & Unix
1. En la configuración de Apache, añade las siguientes lineas (o verifica que no estén comentadas):
LoadModule env_modulo modulos/mod_env.so
SetEnv II_SYSTEM tu-directorio-II_SYSTEM
SetEnv LD_LIBRARY_PATH tu-directorio-II_SYSTEM/ingres/lib


2. Reinicia Apache

Ejemplo de código...


Nota: en los ejemplos precedente es posible especificar un nodo o vnode

Conexión
<?php
$link = ingres_connect(“mydb”, “username”, “password”);
or die(“Could not connect”);
echo “Connected successfully”;
ingres_close($link);
?>


Test de errores
<?php
$link = ingres_connect(“mydb”, “username”, “password”);
if (ingres_errno($link) != 0) {
echo ingres_errno($link) . “ : “ . ingres_error($link) . “<BR/>\n”;
}
?>


Consulta simple
<?php
$link = ingres_connect(“mydb”, “username”, “password”);
// Gives a list of the tables
$sql = “select * from iirelation order by relid asc”;
$rc = ingres_query($sql,$link);
// Do some error checking...
while ( $iirelation = ingres_fetch_object($link) ) {
echo $iirelation->relid “<BR/>\n”;
}
?>


Consulta con parámetros
<?php
$link = ingres_connect(“iidbdb”, “ingres”, “ingres”);
// Gives a list of the tables based on a parameter
$sql = “select * from iirelation where relowner = ? order by relid asc”;
$params[“owner1”] = (“usrname”);
$rc = ingres_query($sql,$link,$params);
// Do some error checking...
while ( $iirelation=ingres_fetch_object($link) ) {
echo $iirelation->relid “<BR/>\n”;
}
?>


Subida de un BLOB
<?php
// Fetch the image to be inserted
$handle = fopen (“usrname.png”,”r”);
$login_image = stream_get_contents($handle);
fclose($handle);
// Set up the query
$sql = “insert into login_images values (?,?)”;
// Type the parameters being passed
$types = “vB”; // varchar, BLOB
// Set up the parameter values
$params[“login”] = “usrname”;
$params[“image”] = $login_image;
// Execute
$rc = ingres_query($sql,$link,$params,$types);
?>


PD: El artículo original fue escrito por jpzuate, contribuidor de CommentCaMarche
Mejores respuestas para « Conexion a una base de datos Ingres con PHP » en :
Oracle – Información acerca del tamaño de la base de datos VerEn general el tamaño de la base de datos está definido como el total del tamaño de los ficheros de datos. El siguiente código te ayudará en la gestión del espacio de tu base de datos. clear breaks clear computes clear columns set pagesize...
Formularios en línea – Los campos Ver¿Qué datos ingresar? Cómo rellenar la información La organización de los campos Separar los campos La organización de los campos y títulos La longitud de los campos ¿Qué datos ingresar? En la mayoría de formularios, no hay obligación de...
MySQL – Optimización VerLa optimización en MySQL pasa por tres componentes, a saber: Optimización del servidor MySQL Optimización de la base de datos Optimización de las consultas Optimización de la configuración del servidor MySQL La optimización del servidor puede...
Descargar PHP VerPHP es un lenjuage cuyo proposito esta dedicado al desarrollo de las paginas web dinamicas que acceden a base de datos. el lenjuage PHP, ha sido uno de los lenguajes , mas poderosos y estables para generar paginas web sobre servidores Linux e...
Bases de datos - Utilización de formularios VerUtilización de formularios Para poder utilizar una base de datos, el usuario debe contar con una interfaz que le permita visualizar los datos según ciertos criterios Existe una herramienta para esto: los formularios. Un formulario es una interfaz con...
Introducción - Bases de datos Ver¿Qué es una base de datos? Una base de datos (cuya abreviatura es BD) es una entidad en la cual se pueden almacenar datos de manera estructurada, con la menor redundancia posible. Diferentes programas y diferentes usuarios deben poder utilizar estos...
Administrador de bases de datos VerAdministrador de bases de datos Un administrador de bases de datos (o DBA) tiene la responsabilidad de mantener y operar las bases de datos que conforman el sistema de información de una compañía. Habilidades Debido a la importancia de los datos que...