mirror of
https://github.com/php/doc-es.git
synced 2026-04-23 15:18:07 +02:00
f950656271
- Algunos archivos de reference/iconv - Adopcion de archivos en translation.xml git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@167206 c90b9560-bf6c-de11-be94-00142212c4b1
369 lines
12 KiB
XML
369 lines
12 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!-- $Revision: 1.10 $ -->
|
|
<!-- EN-Revision: 1.21 Maintainer: lboshell Status: ready -->
|
|
<reference id="ref.pgsql">
|
|
<title>Funciones PostgreSQL</title>
|
|
<titleabbrev>PostgreSQL</titleabbrev>
|
|
|
|
<partintro>
|
|
<section id="pgsql.intro">
|
|
&reftitle.intro;
|
|
<para>
|
|
La base de datos PostrgeSQL es un producto Open Source y
|
|
disponible sin costo. Postgres, desarrollado originalmente en el
|
|
Deportamento de Ciencias de Computación de UC Berkeley,
|
|
fue pionero en muchos de los conceptos de objetos y relacionales
|
|
que ahora están apareciendo en algunas bases de datos
|
|
comerciales. Provee soporte para lenguajes SQL92/SQL99,
|
|
transacciones, integridad referencial, procedimientos almacenados
|
|
y extensibilidad de tipos. PostgreSQL es un descendiente de
|
|
código abierto de su código original de Berkeley.
|
|
</para>
|
|
</section>
|
|
|
|
<section id="pgsql.requirements">
|
|
&reftitle.required;
|
|
<para>
|
|
Para hacer uso del soporte PostgreSQL, necesita PostgreSQL 6.5 o
|
|
posterior, PostgreSQL 7.0 o posterior para habilitar todas las
|
|
características del módulo. PostgreSQL soporta
|
|
varias codificaciones de caracteres, incluyendo
|
|
codificación de caracteres multibyte. Su versión
|
|
actual, asi como más información sobre PostgreSQL
|
|
se encuentra disponible en <ulink
|
|
url="&url.pgsql;">&url.pgsql;</ulink> y
|
|
<ulink url="&url.pgsql.techdocs;">&url.pgsql.techdocs;</ulink>.
|
|
</para>
|
|
</section>
|
|
|
|
&reference.pgsql.configure;
|
|
|
|
&reference.pgsql.ini;
|
|
|
|
<section id="pgsql.using">
|
|
<title>Modo de uso y consejos</title>
|
|
<warning>
|
|
<para>
|
|
El uso del módulo PostgreSQL con PHP 4.0.6 no se
|
|
recomienda debido a un fallo en el código de
|
|
gestión de mensajes tipo noticia. Use la versión
|
|
4.1.0 o posterior.
|
|
</para>
|
|
</warning>
|
|
<warning>
|
|
<para>
|
|
Los nombres de funciones PostgreSQL serán modificados en
|
|
el lanzamiento 4.2.0 para adoptar los estándares de
|
|
código actuales. La mayoría de nombres nuevos
|
|
tendrán signos de subrayado adicionales,
|
|
p.ej. pg_lo_open(). Algunas funciones son renombradas a nuevos
|
|
nombres por razones de consistencia, p.ej. pg_exec() a
|
|
pg_query(). Los nombres antiguos pueden ser usados en 4.2.0 y
|
|
algunas versiones subsiguientes, pero pueden ser eliminados en
|
|
el futuro.
|
|
</para>
|
|
<table>
|
|
<title>Nombres de función modificados</title>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>Nombre antiguo</entry>
|
|
<entry>Nombre nuevo</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry><function>pg_cmdtuples</function></entry>
|
|
<entry><function>pg_affected_rows</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_errormessage</function></entry>
|
|
<entry><function>pg_last_error</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_exec</function></entry>
|
|
<entry><function>pg_query</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_fieldname</function></entry>
|
|
<entry><function>pg_field_name</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_fieldsize</function></entry>
|
|
<entry><function>pg_field_size</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_fieldnum</function></entry>
|
|
<entry><function>pg_field_num</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_fieldprtlen</function></entry>
|
|
<entry><function>pg_field_prtlen</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_fieldisnull</function></entry>
|
|
<entry><function>pg_field_is_null</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_freeresult</function></entry>
|
|
<entry><function>pg_free_result</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_getlastoid</function></entry>
|
|
<entry><function>pg_last_oid</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_loreadall</function></entry>
|
|
<entry><function>pg_lo_read_all</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_locreate</function></entry>
|
|
<entry><function>pg_lo_create</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_lounlink</function></entry>
|
|
<entry><function>pg_lo_unlink</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_loopen</function></entry>
|
|
<entry><function>pg_lo_open</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_loclose</function></entry>
|
|
<entry><function>pg_lo_close</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_loread</function></entry>
|
|
<entry><function>pg_lo_read</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_lowrite</function></entry>
|
|
<entry><function>pg_lo_write</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_loimport</function></entry>
|
|
<entry><function>pg_lo_import</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_loexport</function></entry>
|
|
<entry><function>pg_lo_export</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_numrows</function></entry>
|
|
<entry><function>pg_num_rows</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_numfields</function></entry>
|
|
<entry><function>pg_num_fields</function></entry>
|
|
</row>
|
|
<row>
|
|
<entry><function>pg_result</function></entry>
|
|
<entry><function>pg_fetch_result</function></entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
<para>
|
|
La vieja
|
|
sintaxis <function>pg_connect</function>/<function>pg_pconnect</function>
|
|
será marcada como obsoleta para dar soporte a conexiones
|
|
asincrónicas en el futuro. Por favor use una cadena de
|
|
conexión para <function>pg_connect</function>
|
|
y <function>pg_pconnect</function>.
|
|
</para>
|
|
</warning>
|
|
<para>
|
|
No todas las funciones son soportadas en todas las
|
|
instalaciones. Depende de su versión de libpq (la interfaz
|
|
C de Cliente PostrgeSQL) y de cómo fue compilado libpq. Si
|
|
hace falta alguna función, libpq no soporta la
|
|
característica requerida para la función.
|
|
</para>
|
|
<para>
|
|
También es importante que no use una versión de
|
|
libpq más antigua que la del Servidor PostgreSQL al que se
|
|
conectará. Si usa una versión de libpq más
|
|
antigua que la que el Servidor PostgreSQL espera, puede tener
|
|
problemas.
|
|
</para>
|
|
<para>
|
|
A partir de la versión 6.3 (03/02/1998) PostgreSQL usa
|
|
sockets de dominio unix por defecto. El puerto TCP NO será
|
|
abierto por defecto. A continuación se presenta una tabla
|
|
que describe estas posibilidades de conexión nuevas. Este
|
|
socket se encontrará
|
|
en <filename>/tmp/.s.PGSQL.5432</filename>. Esta opción
|
|
puede habilitarse con la bandera '-i'
|
|
a <command>postmaster</command> y su significado es: "escuche en
|
|
sockets TCP/IP asi como en sockets de dominio Unix".
|
|
<table>
|
|
<title>Postmaster y PHP</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Postmaster</entry>
|
|
<entry>PHP</entry>
|
|
<entry>Status</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>postmaster &</entry>
|
|
<entry>pg_connect("dbname=NombreDeMiBD");</entry>
|
|
<entry>OK</entry>
|
|
</row>
|
|
<row>
|
|
<entry>postmaster -i &</entry>
|
|
<entry>pg_connect("dbname=NombreDeMiBD");</entry>
|
|
<entry>OK</entry>
|
|
</row>
|
|
<row>
|
|
<entry>postmaster &</entry>
|
|
<entry>pg_connect("host=localhost dbname=NombreDeMiBD");</entry>
|
|
<entry>
|
|
No fue posible conectarse con el servidor PostgreSQL:
|
|
connectDB() falló: ¿Está corriendo
|
|
postmaster y acepta conexiones TCP/IP (con -i) en 'localhost'
|
|
en el puerto '5432'? en /ruta/hacia/archivo.php en la
|
|
línea 20.
|
|
</entry>
|
|
</row>
|
|
<row>
|
|
<entry>postmaster -i &</entry>
|
|
<entry>pg_connect("host=localhost dbname=NombreDeMiBD");</entry>
|
|
<entry>OK</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
</para>
|
|
<para>
|
|
Puede establecerse una conexión con el servidor PostgreSQL
|
|
con el siguiente juego de pares de valores en la cadena de
|
|
comando:
|
|
<command>$con = pg_connect("host=miHost port=miPuerto tty=miTTY
|
|
options=misOpciones dbname=miBD user=miUsuario
|
|
password=miContrasenya ");</command>
|
|
</para>
|
|
<para>
|
|
La sintaxis previa de:
|
|
<command>
|
|
$conn = pg_connect ("host", "port", "options", "tty", "dbname")
|
|
</command>
|
|
ha sido marcada como obsoleta.
|
|
</para>
|
|
<para>
|
|
Las variables de entorno afectan el comportamiente de
|
|
servidor/cliente de PostgreSQL. Por ejemplo, el módulo
|
|
PostgreSQL buscará la variable de entorno PGHOSN cuando el
|
|
nombre de host sea omitido en la cadena de conexión. Las
|
|
variables de entorno soportadas son diferentes entre
|
|
versión y versión. Refiérase el Manual de
|
|
Programador de PostgreSQL (libpq - Variables de Entorno) para
|
|
más detalles.
|
|
</para>
|
|
<para>
|
|
Asegúrese de establecer las variables de entorno para el
|
|
usuario apropiado. Use <literal>$_ENV</literal>
|
|
o <function>getenv</function> para chequear cuáles
|
|
variables de entorno están disponibles en el proceso
|
|
actual.
|
|
</para>
|
|
<example>
|
|
<title>Definición de parámetros
|
|
predeterminados</title>
|
|
<programlisting>
|
|
<![CDATA[
|
|
PGHOST=pgsql.example.com
|
|
PGPORT=7890
|
|
PGDATABASE=sistema-web
|
|
PGUSER=usuario-web
|
|
PGPASSWORD=secreto
|
|
PGDATESTYLE=ISO
|
|
PGTZ=JST
|
|
PGCLIENTENCODING=EUC-JP
|
|
|
|
export PGHOST PGPORT PGDATABASE PGUSER PGPASSWORD PGDATESTYLE PGTZ PGCLIENTENCODING
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
<note>
|
|
<para>
|
|
PostgreSQL convierte automáticamente todos los
|
|
identificadores (p.ej. nombres de tablas/columnas) a valores en
|
|
minúsculas. Para lograr que reconozca valores en
|
|
mayúsculas, debe rodear siempre el identificador entre
|
|
comillas.
|
|
</para>
|
|
</note>
|
|
</section>
|
|
|
|
&reference.pgsql.constants;
|
|
|
|
<section id="pgsql.examples">
|
|
&reftitle.examples;
|
|
<para>
|
|
A partir de PostgreSQL 7.1.0, puede almacenar hasta 1GB en un
|
|
campo de tipo texto. En versiones anteriores, éste se
|
|
encontraba limitado al tamaño de bloque (por defecto 8KB,
|
|
el máximo era 32KB, definido en tiempo de
|
|
compilación)
|
|
</para>
|
|
<para>
|
|
Para usar la interfaz de objetos grandes (lo), es necesario
|
|
ubicar las funciones de objetos grandes en el interior de un
|
|
bloque de transacción. Un bloque de transacción
|
|
comienza con una sentencia SQL <command>BEGIN</command> y, si la
|
|
transacción fue válida, termina
|
|
con <command>COMMIT</command> o <command>END</command>. Si la
|
|
transacción falla, ésta debe ser cerrada
|
|
con <command>ROLLBACK</command> o
|
|
<command>ABORT</command>.
|
|
<example>
|
|
<title>Uso de Objetos Grandes</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
$base_de_datos = pg_connect("dbname=jacarta");
|
|
pg_query($base_de_datos, "begin");
|
|
$oid = pg_lo_create($base_de_datos);
|
|
echo "$oid\n";
|
|
$gestor = pg_lo_open($base_de_datos, $oid, "w");
|
|
echo "$gestor\n";
|
|
pg_lo_write($gestor, "datos de objeto grande");
|
|
pg_lo_close($gestor);
|
|
pg_query($base_de_datos, "commit");
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
Usted no debe cerrar la conexión con el servidor PostgreSQL
|
|
antes de cerrar el objeto grande.
|
|
</para>
|
|
</section>
|
|
</partintro>
|
|
|
|
&reference.pgsql.functions;
|
|
|
|
</reference>
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"../../../manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|