cvs: phpdoc /de/functions pgsql.xml

From: Date: Wed, 10 Apr 2002 15:54:06 +0000
Subject: cvs: phpdoc /de/functions pgsql.xml
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969344270@lists.php.net to get a copy of this message
conni Wed Apr 10 11:54:06 2002 EDT Modified files: /phpdoc/de/functions pgsql.xml Log: Translated up to Rev 1.78

Index: phpdoc/de/functions/pgsql.xml diff -u phpdoc/de/functions/pgsql.xml:1.29 phpdoc/de/functions/pgsql.xml:1.30 --- phpdoc/de/functions/pgsql.xml:1.29 Sat Mar 30 08:13:59 2002 +++ phpdoc/de/functions/pgsql.xml Wed Apr 10 11:54:02 2002 @@ -1,33 +1,120 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - <reference id="ref.pgsql"> +<?xml version='1.0'?> +<reference id='ref.pgsql'> <title>PostgreSQL Funktionen</title> <titleabbrev>PostgreSQL</titleabbrev> - + <partintro> - <para> - Postgres, ursprünglich entwickelt im UC Berkeley Computer Science + <warning> + <para> + Wegen eines Bugs in der Behandlung von NOTICE-Benachrichtigungen + sollte das PostgreSQL-Modul der PHP Version 4.0.6 nicht + benutzt werden. + </para> + </warning> + <warning> + <para> + Die Namen der PostgreSQL-Funktionen werden sich ab der PHP Version + 4.2.0 ändern, um sie an die gültigen Coding-Standards anzupassen. + Die meisten neuen Namen enthalten zusätzliche Unterstriche, z.B. + pg_lo_open(). Einige Funktionen werden der Einheitlichkeit wegen + umbenannt, z.B. pg_exec() zu pg_query(). Die älteren Namen können + in der Version 4.2.0 und auch noch ein paar Releases danach noch + verwendet werden, aber sie werden irgendwann gelöscht. Die + CVS-Version benutzt die neuen Funktionsnamen. + </para> + <example> + <title>Die geänderten Funktionsnamen</title> + <programlisting role='php'> +<![CDATA[ +ALTER NAME NEUER NAME +pg_exec pg_query +pg_getlastoid pg_last_oid +pg_cmdtuples pg_affected_rows +pg_errormessage pg_last_error +pg_numrows pg_num_rows +pg_numfields pg_num_fields +pg_fieldname pg_field_name +pg_fieldsize pg_field_size +pg_fieldtype pg_field_type +pg_fieldnum pg_field_num +pg_fieldprtlen pg_field_prtlen +pg_fieldisnull pg_field_is_null +pg_freeresult pg_free_result +pg_result pg_fetch_result +pg_loreadall pg_lo_read_all +pg_locreate pg_lo_create +pg_lounlink pg_lo_unlink +pg_loopen pg_lo_open +pg_loclose pg_lo_close +pg_loread pg_lo_read +pg_lowrite pg_lo_write +pg_loimport pg_lo_import +pg_loexport pg_lo_export +]]> + </programlisting> + </example> + <para> + Die veraltete Syntax von pg_connect()/pg_pconnect wird ungültig + werden, um zukünftig asynchrone Verbindungen zu unterstützen. + Bitte benutzen Sie einen Verbindungsstring mit pg_connect() und + pg_pconnect(). + </para> + </warning> + <para> + PostgreSQL, ursprünglich entwickelt im UC Berkeley Computer Science Department, hat Pionierarbeit bei objektrelationalen Datenbankkonzepten geleistet, die jetzt Einzug in kommerzielle - Datenbanken halten. Postgres bietet SQL92/SQL3 - Sprachunterstützung, Transaktionen und erweiterbare - Typenklassen. PostgreSQL ist eine Public Domain und Open Source + Datenbanken halten. PostgreSQL bietet SQL92/SQL99 + Sprachunterstützung, Transaktionen und ein erweiterbares + Typkonzept. PostgreSQL ist eine Public Domain und Open Source Weiterentwicklung des ursprünglichen Berkeley-Codes. </para> <para> - PostgreSQL ist kostenlos. Die aktuelle Version ist erhältlich bei - <ulink url="&url.pgsql;">www.PostgreSQL.org</ulink>. + PostgreSQL ist ein Open Source Produkt und kostenlos + erhältlich. Um PostgreSQL benutzen zu können, brauchen Sie + mindestens eine Version 6.5 oder später, um alle Leistungsmerkmale + des PostgreSQL-Moduls nutzen zu können, müssen Sie eine Version ab + 7.0 haben. PostgreSQL unterstützt viele Zeichencodierungen, + einschliessllich multibyte character encoding. Die aktuelle Version + sowie weitere Informationen über PostgreSQL sind auf der Seite + <ulink url='&url.pgsql;'>www.postgresql.org</ulink> erhältlich. + </para> + <para> + Um die PostgreSQL-Unterstützung nutzen zu können, müssen Sie + PHP mit &quot;--with-pgsql[=DIR]&quot; kompilieren. Falls das + shared object module verfügbar ist, kann das PostgreSQL Modul + mit der <link linkend='ini.extension'>extension</link> Direktive + der Datei &php.ini; geladen werden oder mittels der Funktion + <function>dl</function>. Die unterstützten ini Direktiven sind in + der Datei <filename>php.ini-dist</filename> beschrieben, die mit + der Distribution ausgeliefert wird. + </para> + <para> + Nicht alle Funktionen sind in allen Versionen verfügbar. Es hängt + davon ab, welche libpq Version (das PostgreSQL C Client Interface) + auf Ihrem Rechner verfügbar ist und wie libpq kompiliert wurde. + Falls eine Funktion nicht verfügbar ist, liegt es daran, dass libpq + die nötigen Routinen nicht unterstützt, die die Funktion braucht. + </para> + <para> + Es ist ausserdem wichtig, dass Ihre libpq neuer ist, als der + PostgreSQL Server, zu dem Sie eine Verbindung aufbauen. Wenn Sie + eine libpq benutzen, die älter als vom PostgreSQL Server erwartet, + werden Sie wahrscheinlich Probleme haben. </para> <para> - Seit Version 6.3 (03/02/1998) benutzt PostgreSQL Unix Domain - Sockets, siehe folgende Tabelle. Der Socket ist in + Seit Version 6.3 (03/02/1998) benutzt PostgreSQL per Voreinstellung + Unix Domain Sockets. Ein TCP/IP Port wird NICHT standardmässig + geöffnet. In der untenstehenden Tabelle werden diese neuen + Verbindungsmöglichkeiten gezeigt. Der Socket ist in <filename>/tmp/.s.PGSQL.5432</filename> zu finden. Der Schalter -i, der dem <command>postmaster</command> mitgegeben werden kann, weist diesen an, sowohl über TCP/IP als auch über UNIX Domain - Sockets eine Verbindung bereitzustellen. + Sockets eine Verbindung aufzubauen. <table> <title>Postmaster und PHP</title> - <tgroup cols="3"> - <thead> + <tgroup cols='3'> + <thead> <row> <entry>Postmaster</entry> <entry>PHP</entry> @@ -48,11 +135,11 @@ <row> <entry>postmaster &amp;</entry> <entry>pg_connect("host=localhost dbname=MyDbName");</entry> - <entry> + <entry> Unable to connect to PostgreSQL server: connectDB() failed: Is the postmaster running and accepting TCP/IP (with -i) connection at 'localhost' on port '5432'? in - /path/to/file.php3 on line 20. + /pfad/zu/datei.php on line 20. </entry> </row> <row> @@ -65,995 +152,1587 @@ </table> </para> <para> - Eine Verbindung läßt sich auch mit folgendem Befehl herstellen: - <command>$conn = pg_Connect("host=myHost port=myPort tty=myTTY - options=myOptions user=myUser password=myPassword dbname=myDB"); + Eine Verbindung zu einem PostgreSQL Server lässt sich auch mit den + folgenden Wertepaaren, die im Verbindungsstring gesetzt werden, + herstellen (wobei mindestens der Name der Datenbank + angegeben sein muss): <command>$conn = + pg_connect("host=myHost port=myPort tty=myTTY options=myOptions + dbname=myDB user=myUser password=myPassword "); </command> </para> <para> - Die bisherige Syntax: - <command>$conn = pg_connect ("host", "port", "options", "tty", - "dbname") + Die bisherige Syntax + <command> + $conn = pg_connect ("host", "port", "options", "tty", "dbname") </command> ist veraltet und sollte nicht weiter verwendet werden. </para> <para> - Um die Large Object-Schnittstelle zu benutzen, ist es nötig, diese - in einem Transaktionsblock einzuschließen. Ein Transaktionsblock - beginnt mit einem <command>begin</command> und endet, wenn die - Transaktion gültig war, mit <command>commit</command> - oder <command>end</command>. Wenn die Transaktion fehlschlägt, - sollte sie mit <command>abort</command> oder - <command>rollback</command> geschlossen werden. + Umgebungsvariablen beeinflussen das Server/Client-Verhalten von + PostgreSQL. Zum Beispiel sucht das PostgreSQL-Modul nach der + Umgebungsvariablen PGHOST, falls der Hostname im Verbindungsstring + nicht angegeben wurde. Die unterstützten Umgebungsvariablen + variieren von Version zu Version. Schauen Sie für weitere + Informationen in den PostgreSQL Programmer's Guide (nach den libpq + Umgebungsvariablen). + </para> + <para> + Versichen Sie sich, dass Sie die Umgebungsvariable für den + aktuellen Benutzer gesetzt haben. Um sich die Umgebungsvariablen, + die für den aktuellen Prozess verfügbar sind, anzeigen zu lassen, + benutzen Sie <literal>$_ENV</literal> oder + <function>getenv</function>. + </para> + <example> + <title>Umgebungsvariablen setzen</title> + <programlisting role='php'> +<![CDATA[ +PGHOST=psgql.exmaple.com +PGPORT=7890 +PGDATABASE=web-system +PGUSER=web-user +PGPASSWORD=secret +PGDATESTYLE=ISO +PGTZ=JST +PGCLIENTENCODING=EUC-JP + +export PGHOST PGPORT PGDATABASE PGUSER PGPASSWORD PGDATESTYLE PGTZ PGCLIENTENCODING +]]> + </programlisting> + </example> + <para> + Ab der PostgreSQL Version 7.1.0 ist die maximale Grösse eines Feldes + mit dem Datentyp text 1GB. Ältere PostgreSQL Versionen begrenzten + Felder vom Typ text auf Blockgrösse (normalerweise 8KB bis maximal + 32 KB, falls dies bei der Kompilation angegeben wurde). + </para> + <para> + Um die Large Object-Schnittstelle (lo) zu benutzen, ist es nötig, + die Large-Object-Funktionen in einen Transaktionsblock einzuschliessen. + Ein Transaktionsblock beginnt mit einem SQL-Befehl + <command>begin</command> und endet, falls die Transaktion gültig + war, mit <command>commit</command> oder <command>end</command>. + Wenn die Transaktion fehlschlägt, sollte sie mit + <command>abort</command> oder <command>rollback</command> + geschlossen werden. <example> - <title>Grosse Objekte benutzen</title> - <programlisting role="php"> -&lt;?php - $database = pg_Connect ("", "", "", "", "jacarta"); - pg_exec ($database, "begin"); - $oid = pg_locreate ($database); + <title>Large Objects benutzen</title> + <programlisting role='php'> +<![CDATA[ +<?php + $database = pg_connect ("dbname=jacarta"); + pg_query ($database, "begin"); + $oid = pg_lo_create ($database); echo ("$oid\n"); - $handle = pg_loopen ($database, $oid, "w"); + $handle = pg_lo_open ($database, $oid, "w"); echo ("$handle\n"); - pg_lowrite ($handle, "gaga"); - pg_loclose ($handle); - pg_exec ($database, "commit") + pg_lo_write ($handle, "Daten des Large Objects"); + pg_lo_close ($handle); + pg_query ($database, "commit"); ?> +]]> </programlisting> </example> + Schliessen Sie zuerst das Large Object, bevor Sie die Verbindung + schliessen. </para> </partintro> - <refentry id="function.pg-close"> + + <refentry id='function.pg-close'> <refnamediv> - <refname>pg_Close</refname> - <refpurpose>Schließt eine PostgreSQL-Verbindung</refpurpose> + <refname>pg_close</refname> + <refpurpose>Schliesst eine PostgreSQL-Verbindung</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>bool</type><methodname>pg_close</methodname> - <methodparam><type>int</type><parameter>connection</parameter></methodparam> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - Liefert &false; zurück, wenn die Verbindung zur Datenbank keine - gültige Kennung hat, ansonsten ist der Rückgabewert - &true;. Schließt eine PostgreSQL Datenbank-Verbindung mit der - angegebenen Verbindungskennung. + <function>pg_close</function> schliesst die nichtpersistente + Verbindung zu einem PostgreSQL Datenbankserver, die durch die + angegebene <parameter>connection</parameter> Kennung bezeichnet + wird. Falls <parameter>connection</parameter> eine gültige + Verbindungskennung ist, wird &true; zurückgegeben, anderenfalls + &false;. + </para> + <note> + <para> + <function>pg_close</function> ist normalerweise nicht notwendig, + da geöffnete, nichtpersistente Verbindungen automatisch + geschlossen werden, wenn die Ausführung des Skripts beendet + ist. Mit <function>pg_close</function> können nichtpersistente + Verbindungen, die mit <function>pg_pconnect</function> erzeugt + wurden, geschlossen werden. + </para> + </note> + <para> + Falls es auf dieser Verbindung geöffnete Large Objects gibt, + sollten Sie diese schliessen, bevor Sie die Verbindung schliessen. </para> </refsect1> </refentry> - <refentry id="function.pg-cmdtuples"> + + <refentry id='function.pg-affected-rows'> <refnamediv> - <refname>pg_cmdTuples</refname> - <refpurpose> - Gibt die Anzahl betroffener Tupel zurück - </refpurpose> + <refname>pg_affected_rows</refname> + <refpurpose>Gibt die Anzahl betroffener datensätze (Tupel) zurück</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_cmdtuples</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>int</type><methodname>pg_affected_rows</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> </methodsynopsis> <para> - <function>pg_cmdTuples</function> gibt die Anzahl der - Tupel (instances) einer INSERT, UPDATE oder DELETE Abfrage - zurück. Die Funktion liefert 0 zurück, wenn die Abfrage keinen - Tupel liefert. + <function>pg_affected_rows</function> gibt die Anzahl der Tupels + (Instanzen/Datensätze/Zeilen) zurück, die von einer mit + <function>pg_query</function> ausgeführten INSERT, UPDATE oder + DELETE Abfrage betroffen wurden. Die Funktion liefert 0 zurück, + wenn keine Datensatz betroffen wurde. <example> - <title>pg_cmdtuples</title> - <programlisting role="php" ->&lt;?php -$result = pg_exec($conn, "INSERT INTO verlag VALUES ('Autor')"); -$cmdtuples = pg_cmdtuples($result); -echo $cmdtuples . " &lt;- cmdtuples affected."; + <title><function>pg_affected_rows</function></title> + <programlisting role='php'> +<![CDATA[ +<?php +$result = pg_query ($conn, "INSERT INTO publisher VALUES ('Author')"); +$cmdtuples = pg_affected_rows ($result); +echo $cmdtuples . " Datensätze wurden betroffen."; ?> +]]> </programlisting> </example> </para> + <note> + <para> + Diese Funktion entspricht der Funktion <literal>pg_cmdtuples()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_query</function> und + <function>pg_num_rows</function>. + </para> </refsect1> </refentry> - <refentry id="function.pg-connect"> + + + <refentry id='function.pg-connect'> <refnamediv> - <refname>pg_Connect</refname> - <refpurpose>Öffnet eine Verbindung</refpurpose> + <refname>pg_connect</refname> + <refpurpose>Öffnet eine PostgreSQL Verbindung</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_connect</methodname> - <methodparam><type>string</type><parameter>conn_string</parameter></methodparam> + <type>resource</type><methodname>pg_connect</methodname> + <methodparam><type>string</type><parameter>connection_string</parameter></methodparam> </methodsynopsis> <para> - Öffnet eine Verbindung zu einer PostgreSQL-Datenbank und liefert - bei Erfolg die Verbindungskennung zurück - oder &false;, falls - keine Verbindung hergestellt werden konnte. - Alle Verbindungsdaten sind in dem String - <parameter>conn_string</parameter> zusammengefasst. + <function>pg_connect</function> gibt eine Verbindungskennung + zurück, die von anderen PostgreSQL-Funktionen benötigt wird. + </para> + <para> + <function>pg_connect</function> öffnet eine Verbindung zu + einer PostgreSQL Datenbank, die durch den + <parameter>connection_string</parameter> + näher bezeichnet wird. Zurückgegeben wird bei Erfolg eine + Verbindungskennung oder &false;, falls die Verbindung nicht + zustande kam. Der <parameter>connection_string</parameter> + sollte in Anführungszeichen stehen und keine Kommas zwischen + den Parametern haben. <example> - <title>Gebrauch von <function>pg_connect</function></title> - <programlisting role="php"> -&lt;?php -$dbconn = pg_Connect ("dbname=mary"); -//connect to a database named "mary" -$dbconn2 = pg_Connect ("host=localhost port=5432 dbname=mary"); -//connect to a database named "mary" on "localhost" at port "5432" -$dbconn3 = pg_Connect ("user=lamb passwd=baaaa dbname=mary "); -//connect to a database named "mary" with a username and password + <title>pg_connect benutzen</title> + <programlisting role='php'> +<![CDATA[ +<?php +$dbconn = pg_connect ("dbname=mary"); +//Verbindungsaufbau zu einer Datenbank namens "mary" +$dbconn2 = pg_connect ("host=localhost port=5432 dbname=mary"); +// Verbindungsaufbau zu einer Datenbank namens "mary" auf dem +// Host "localhost" über den (Standard-)Port "5432" +$dbconn3 = pg_connect ("host=sheep port=5432 dbname=mary user=lamb password=foo"); +//Verbindungsaufbau zu einer Datenbank namens "mary" auf dem Host +// "sheep" mit dem Benutzernamen "lamb" und dem Passwort "foo" +$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar"; +$dbconn4 = pg_connect ($conn_string); +//Verbindungsaufbau zu einer Datenbank namens "test" auf dem Host +//"sheep" unter dem Benutzernamen "lamb" mit dem Passwort "bar" ?> +]]> </programlisting> </example> - Die von dieser Funktion - zurückgelieferte Verbindungskennung wird von anderen - PostgreSQL-Funktionen benötigt. Es ist auch möglich, mehrere - Verbindungen gleichzeitig zu öffnen. + Die Argumente für + <parameter>connection_string</parameter> schliessen + <parameter>host</parameter>, <parameter>port</parameter>, + <parameter>tty</parameter>, <parameter>options</parameter>, + <parameter>dbname</parameter>, <parameter>user</parameter>, + und <parameter>password</parameter> ein. </para> <para> - Die möglichen Argumente der Verbindungsdaten sind - <parameter>dbname</parameter> - <parameter>port</parameter>, <parameter>host</parameter>, - <parameter>tty</parameter>, <parameter>options</parameter>, - <parameter>user</parameter>, und <parameter>password</parameter>. + Falls ein zweiter Aufruf von <function>pg_connect</function> + mit demselben <parameter>connection_string</parameter> + gemacht wird, wird keine neue Verbindung geöffnet, sondern + es wird die Verbindungskennung der bereits geöffneten + Verbindung zurückgegeben. Mit unterschiedlichen + Verbindungsstrings können Sie mehrere Verbindungen zu derselben + Datenbank öffnen. </para> <para> - Die alte Syntax - <methodsynopsis> - <type>int</type><methodname>pg_connect</methodname> - <methodparam><type>string</type><parameter>host</parameter></methodparam> - <methodparam><type>string</type><parameter>port</parameter></methodparam> - <methodparam><type>string</type><parameter>options</parameter></methodparam> - <methodparam><type>string</type><parameter>tty</parameter></methodparam> - <methodparam><type>string</type><parameter>dbname</parameter></methodparam> - </methodsynopsis> - sollte nicht mehr verwendet werden. + Die Syntax + <command>$conn = pg_connect ("host", "port", "options", "tty", "dbname") + </command> + ist veraltet und sollte nicht mehr benutzt werden. </para> <para> - Siehe auch <function>pg_pConnect</function>. + Siehe auch <function>pg_pconnect</function>, + <function>pg_close</function>, <function>pg_host</function>, + <function>pg_port</function>, <function>pg_tty</function>, + <function>pg_options</function> und <function>pg_dbname</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-dbname"> + + + <refentry id='function.pg-dbname'> <refnamediv> - <refname>pg_DBname</refname> - <refpurpose>Name der Datenbank</refpurpose> + <refname>pg_dbname</refname> + <refpurpose>Gibt den Namen der Datenbank zurück</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>string</type><methodname>pg_dbname</methodname> - <methodparam><type>int</type><parameter>connection</parameter></methodparam> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - Gibt den Namen der Datenbank, deren Verbindungskennung übergeben - wurde, aus - oder &false;, wenn es sich um eine ungültige Kennung - handelt. + <function>pg_dbname</function> gibt den Namen der Datenbank, + deren <parameter>connection</parameter> Kennung übergeben + wurde, zurück - oder &false;, wenn + <parameter>connection</parameter> eine ungültige Kennung ist. </para> </refsect1> </refentry> - <refentry id="function.pg-end-copy"> + + + <refentry id='function.pg-end-copy'> <refnamediv> <refname>pg_end_copy</refname> - <refpurpose>Syncronisation mit dem PostgreSQL backend</refpurpose> + <refpurpose>Synchronisation mit dem PostgreSQL Server</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>bool</type><methodname>pg_end_copy</methodname> - <methodparam choice="opt"><type>resource</type><parameter>connection</parameter></methodparam> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> <function>pg_end_copy</function> syncronisiert das PostgreSQL - frontend mit dem - backend nach einer Kopier-Operation. Die Funktion muss aufgerufen werden, - damit das backend mit dem frontend synchronisiert bleibt. - Liefert &true; im Erfolgsfall, sonst &false;. + Frontend (normalerweise ein Prozess des Webservers) mit dem + PostgreSQL Server nach einer Kopier-Operation, die von der + Funktion <function>pg_put_line</function> durchgeführt wurde. + <function>pg_end_copy</function> muss aufgerufen werden, da + sonst der PostgreSQL Server einen "out of sync" Fehler mit dem + Frontend meldet. Die Funktion gibt bei Erfolg &true; zurück, + &false; sonst. </para> <para> - Weiter Details und ein Beispiel finden Sie bei der Funktion + Weitere Details und ein Beispiel finden Sie bei der Funktion <function>pg_put_line</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-errormessage"> + + + <refentry id='function.pg-last-error'> <refnamediv> - <refname>pg_ErrorMessage</refname> - <refpurpose>Fehlermeldung</refpurpose> + <refname>pg_last_error</refname> + <refpurpose>Gibt die letzte Fehlermeldung einer Verbindung zurück</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>string</type><methodname>pg_errormessage</methodname> - <methodparam><type>int</type><parameter>connection</parameter></methodparam> + <type>string</type><methodname>pg_last_error</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - Liefert einen String, der die Fehlermeldung enthält oder &false; - bei Versagen. Details über den Fehler können aber eher - nicht durch pg_errormessage bezogen werden. Wenn der Fehler bei - der letzten Datenbank-Aktion, für die eine gültige Kennung - existierte, auftrat, liefert die Funktion einen String mit der - Fehlermeldung des Backend-Servers aus. + <function>pg_last_error</function> gibt einen String zurück, + der die letzte Fehlermeldung einer durch + <parameter>connection</parameter> gegebenen Verbindung enthält. + Bei Misserfolg wird &false; zurückgegeben. + </para> + <para> + <function>pg_last_error</function> gibt die letzte + Fehlermeldung der durch <parameter>connection</parameter> + bezeichneten Verbindung zurück. Diese Fehlermeldung kann durch + andere libpq-Funktionen, die für diese Verbindung aufgerufen + wurden, überschrieben werden. Die PostgreSQL-Funktionen rufen + intern die libpq-Funktionen auf. Deshalb mag es sein, dass + Details über den Fehler nicht mit + <function>pg_last_error</function> zurückgegeben werden. Ab der + Version 4.2.0 wird die Funktion pg_result_error_message() zur + Verfügung stehen, womit der letzte Fehler einer Ergebniskennung + ausgelesen werden kann. </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_errormessage()</literal>. + </para> + </note> </refsect1> </refentry> - <refentry id="function.pg-exec"> + <refentry id='function.pg-query'> <refnamediv> - <refname>pg_Exec</refname> + <refname>pg_query</refname> <refpurpose>Führt eine Abfrage aus</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_exec</methodname> - <methodparam><type>int</type><parameter>connection</parameter></methodparam> + <type>resource</type><methodname>pg_query</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> <methodparam><type>string</type><parameter>query</parameter></methodparam> </methodsynopsis> <para> - Gibt eine Ergebniskennung zurück, wenn die Abfrage ausgeführt - wurde oder &false; bei gescheiterter Abfrage oder ungültiger - Verbindungskennung. (Details über den Fehler kann man bei - gültiger Verbindung durch den Gebrauch von - <function>pg_ErrorMessage</function> erhalten). Diese Funktion - sendet ein SQL-Statement an die durch die Verbindungskennung - spezifizierte PostgreSQL Datenbank. Die Verbindung muß eine - gültige, durch <function>pg_Connect</function> zurückgegebene - Kennung haben. Der Rückgabewert dieser Funktion ist eine - Kennung, die dazu verwendet kann, das Abfrageergebnis mit anderen - PostgreSQL-Funktionen anzusprechen. + <function>pg_query</function> gibt eine Ergebniskennung zurück, + falls die Funktion ausgeführt werden konnte. Bei einem + Fehlschalag, oder wenn <parameter>connection</parameter> keine + gültige Verbindungskennung ist, wird &false; zurückgegeben. + Details über einen aufgetretenen Fehler können mit der Funktion + <function>pg_last_error</function> abgefragt werden. + <function>pg_last_error</function> sendet einen SQL-Befehl + an die durch <parameter>connection</parameter> bezeichnete + Datenbank. <parameter>connection</parameter> muss eine gültige + Verbindungskennung sein, die von <function>pg_connect</function> + oder <function>pg_pconnect</function> zurückgegeben wurde. Der + Rückgabewert dieser Funktion ist eine Ergebniskennung, die von + anderen PostgreSQL-Funktionen, wie etwa <function>pg_fetch_array</function> + benutzt wird. <note> <simpara> - PHP/FI lieferte als Rückgabewert 1, wenn die Abfrage kein - Ergebnis liefern würde (beispielsweise INSERTs oder UPDATEs), - und sogar einen Wert größer 1 bei SELECTs, die nichts - zurückgaben. Dies trifft für PHP nicht mehr zu. + <parameter>connection</parameter> ist ein optionaler + Parameter für <function>pg_query</function>. Falls + <parameter>connection</parameter> nicht angegeben wird, wird + die Verbindung benutzt, die zuletzt mit + <function>pg_connect</function> + oder <function>pg_pconnect</function> erstellt wurde. + </simpara> + <simpara> + Obwohl der Parameter <parameter>connection</parameter> + ausgelassen werden kann, wird dies nicht empfohlen, weil es + zu schwer auffindbaren Fehlern in einem Skript führen kann. </simpara> </note> </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_exec()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_connect</function>, + <function>pg_pconnect</function>, + <function>pg_fetch_array</function>, + <function>pg_fetch_object</function>, + <function>pg_num_rows</function>, + und <function>pg_affected_rows</function>. + </para> </refsect1> </refentry> - <refentry id="function.pg-fetch-array"> + + + <refentry id='function.pg-fetch-array'> <refnamediv> - <refname>pg_Fetch_Array</refname> - <refpurpose>Holt eine Datenbankreihe als Array</refpurpose> + <refname>pg_fetch_array</refname> + <refpurpose>Holt eine Zeile als Array</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>array</type><methodname>pg_fetch_array</methodname> - <methodparam><type>int</type><parameter>result</parameter></methodparam> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>row</parameter></methodparam> - <methodparam choice="opt"><type>int</type><parameter> - result_type - </parameter></methodparam> + <methodparam choice='opt'><type>int</type><parameter>result_type</parameter></methodparam> </methodsynopsis> <para> - Rückgabewert: Ein Array, das mit der eingelesenen Reihe identisch - ist, oder &false;, wenn keine Reihe mehr gelesen werden kann. + <function>pg_fetch_array</function> gibt ein Array zurück, das die + gelesene Zeile (Tupel, Datensatz) enthält. Falls keine Zeile gelesen + werden konnte, wird &false; zurückgegeben. </para> <para> <function>pg_fetch_array</function> ist eine erweiterte Version - von <function>pg_fetch_row</function>. Zusätzlich zur Speicherung - der Daten in einem aufgezählten Array speichert diese Funktion - die Daten in assoziativen Indexen, indem es den Feldnamen als - Schlüssel verwendet. - </para> - <para> - Das dritte optionale Argument <parameter>result_type</parameter> - in <function>pg_fetch_array</function> ist eine Konstante, die - folgende Werte annehmen kann: PGSQL_ASSOC, PGSQL_NUM und - PGSQL_BOTH. + von <function>pg_fetch_row</function>. Zusätzlich zur + Speicherung der Daten in einem nummerischen Array (mit den + Feldindizes) speichert diese Funktion die Daten in einem + assoziativen Array mit den Feldnamen als Indizes. + </para> + <para> + <parameter>row</parameter> ist die Zeilennummer des + Datensatzes, der gelesen werden soll. Die Zählung beginnt bei 0. + </para> + <para> + <parameter>result_type</parameter> ist ein optionaler + Parameter, der angibt, wie der Rückgabewert initialisiert wird. + <parameter>result_type</parameter> ist eine Konstante, die die + folgenden Werte annehmen kann: PGSQL_ASSOC, PGSQL_NUM, and PGSQL_BOTH. + <function>pg_fetch_array</function> gibt mit PGSQL_ASSOC ein + assoziatives Array mit Feldnamen als Schlüssel zurück, mit + PGSQL_NUM wird ein nummerisches Array mit den Feldnummern + zurückgegeben und mit PGSQL_BOTH wird ein Array mit beiden + Indizes zurückgegeben. PGSQL_BOTH ist die Standardeinstellung. <note> <para> - <parameter>Result_type</parameter> wurde in PHP 4.0 - hinzugefügt. + <parameter>result_type</parameter> wurde in PHP 4.0 eingeführt. </para> </note> </para> <para> - Wichtig zu bemerken ist, daß <function>pg_fetch_array</function> - nicht wesentlich langsamer als <function>pg_fetch_row</function> - ist, obwohl eine umfassendere Funktion zur Verfügung gestellt - wird. + <function>pg_fetch_array</function> ist NICHT wesentlich + langsamer als <function>pg_fetch_row</function>, obwohl eine + umfassendere Funktion zur Verfügung gestellt wird. </para> <para> - Für weitere Einzelheiten siehe auch - <function>pg_fetch_row</function> + Siehe auch <function>pg_fetch_row</function>, + <function>pg_fetch_object</function> und + <function>pg_fetch_result</function>. </para> - <example> - <title>PostgreSQL fetch array</title> - <programlisting role="php"> -&lt;?php -$conn = pg_pconnect("","","","","verlag"); + <para> + <example> + <title>PostgreSQL fetch array</title> + <programlisting role='php'> + <![CDATA[ +<?php +$conn = pg_pconnect ("dbname=publisher"); if (!$conn) { - echo "Es ist ein Fehler aufgetreten.\n"; + echo "Ein Fehler ist aufgetreten.\n"; exit; } -$result = pg_Exec ($conn, "SELECT * FROM autoren"); +$result = pg_query ($conn, "SELECT * FROM authors"); if (!$result) { - echo "Es ist ein Fehler aufgetreten.\n"; + echo "Ein Fehler ist aufgetreten.\n"; exit; } -$arr = pg_fetch_array ($result, 0); -echo $arr[0] . " &lt;- array\n"; -$arr = pg_fetch_array ($result, 1); -echo $arr["autor"] . " &lt;- array\n"; +$arr = pg_fetch_array ($result, 0, PGSQL_NUM); +echo $arr[0] . " <- array\n"; + +$arr = pg_fetch_array ($result, 1, PGSQL_ASSOC); +echo $arr["autor"] . " <- array\n"; ?> - </programlisting> - </example> +]]> + </programlisting> + </example> + </para> + <note> + <para> + Ab der Version 4.1.0 ist der Parameter <parameter>row</parameter> optional. + </para> + </note> </refsect1> </refentry> - <refentry id="function.pg-fetch-object"> + + + <refentry id='function.pg-fetch-object'> <refnamediv> - <refname>pg_Fetch_Object</refname> + <refname>pg_fetch_object</refname> <refpurpose>Holt einen Datensatz als Objekt</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>object</type><methodname>pg_fetch_object</methodname> - <methodparam><type>int</type><parameter>result</parameter></methodparam> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>row</parameter></methodparam> - <methodparam choice="opt"><type>int</type><parameter> - result_type - </parameter></methodparam> + <methodparam choice='opt'><type>int</type><parameter>result_type</parameter></methodparam> </methodsynopsis> <para> - Rückgabewert: Ein Objekt, dessen Eigenschaften mit denen der - Felder des erhaltenen Datensatzes übereinstimmen oder &false;, wenn - kein Datensatz mehr zurückgegeben wird. + <function>pg_fetch_object</function> gibt ein Objekt zurück, + dessen dessen Eigenschaften mit den Feldern des erhaltenen + Datensatzes übereinstimmen oder &false;, wenn + kein Datensatz mehr gelesen werden konnte oder ein Fehler auftrat. </para> - <para> + <para> <function>pg_fetch_object</function> ist <function>pg_fetch_array</function> ähnlich, mit einem - Unterschíed: Statt eines Arrays wird ein Objekt zurückgegeben. - Indirekt heißt das, dass man die Daten nur über die Feldnamen und - nicht über ihre Offsets ansprechen kann (Zahlen sind nicht + Unterschied: Statt eines Arrays wird ein Objekt zurückgegeben. + Indirekt heisst das, dass man die Daten nur über die Feldnamen + und nicht über ihre Offsets ansprechen kann (Zahlen sind nicht erlaubte Eigenschaftsnamen). </para> <para> - Das dritte, optionale Argument <parameter>result_type</parameter> - in <function>pg_fetch_object</function> ist eine Konstante und - kann die folgenden Werte annehmen: PGSQL_ASSOC, PGSQL_NUM, and - PGSQL_BOTH. + <parameter>result_type</parameter> ist ein optionaler + Parameter, der angibt, wie der Rückgabewert initialisiert wird. + <parameter>result_type</parameter> ist eine Konstante, die die + folgenden Werte annehmen kann: PGSQL_ASSOC, PGSQL_NUM, and PGSQL_BOTH. + <function>pg_fetch_object</function> gibt mit PGSQL_ASSOC ein + assoziatives Array mit Feldnamen als Schlüssel zurück. + </para> + <para> <note> <para> - <parameter>Result_type</parameter> wurde in PHP 4.0 hinzugefügt + <parameter>result_type</parameter> wurde in PHP 4.0 eingeführt. </para> </note> </para> <para> Von der Geschwindigkeit her ist die Funktion mit - <function>pg_fetch_array</function> identisch und fast so schnell - wie <function>pg_fetch_row</function> (Der Unterschied ist - unwesentlich). + <function>pg_fetch_array</function> identisch und fast so + schnell wie <function>pg_fetch_row</function> (Der Unterschied + ist unwesentlich). + </para> + <para> + Siehe auch <function>pg_query</function>, <function>pg_fetch_array</function>, + <function>pg_fetch_row</function> und <function>pg_fetch_result</function>. </para> <para> - Siehe auch: <function>pg_fetch_array</function> und - <function>pg_fetch_row</function>. <example> - <title>Postgres fetch object</title> - <programlisting role="php"> -&lt;?php + <title>PostgreSQL fetch object</title> + <programlisting role='php'> +<![CDATA[ +<?php $database = "verlag"; -$db_conn = pg_connect ("localhost", "5432", "", "", $database); +$db_conn = pg_connect ("host=localhost port=5432 dbname=$database"); if (!$db_conn): ?> - &lt;H3>Konnte keine Datenbankverbindung zu - &lt;? echo $database ?> herstellen.&lt;/H3> &lt;? + <H1>Konnte keine Verbindung zur PostgreSQL Datenbank <?php echo $database; ?> herstellen.</H1> <?php exit; endif; -$qu = pg_exec ($db_conn, "SELECT * FROM verlag ORDER BY autor"); -$row = 0; // postgres needs a row counter other dbs might not - -while ($data = pg_fetch_object ($qu, $row)): +$qu = pg_query ($db_conn, "SELECT * FROM verlag ORDER BY autor"); +$row = 0; // PostgreSQL braucht einen Zähler, andere DBs evtl. nicht +while ($data = pg_fetch_object ($qu, $row)) { echo $data->autor." ("; echo $data->jahr ."): "; - echo $data->titel."&lt;BR>"; + echo $data->titel."<BR>"; $row++; -endwhile; ?> - -&lt;PRE>&lt;?php -$fields[] = Array ("autor", "Autor"); -$fields[] = Array ("jahr", " Jahr"); +} +?> +<PRE> +<?php +$fields[] = Array ("autor", "Author"); +$fields[] = Array ("jahr", " Jahr"); $fields[] = Array ("titel", " Titel"); -$row= 0; // postgres needs a row counter other dbs might not -while ($data = pg_fetch_object ($qu, $row)): +$row= 0; // PostgreSQL braucht einen Zähler, andere DBs evtl. nicht +while ($data = pg_fetch_object ($qu, $row)) { echo "----------\n"; reset ($fields); while (list (,$item) = each ($fields)): echo $item[1].": ".$data->$item[0]."\n"; endwhile; $row++; -endwhile; -echo "----------\n"; ?> -&lt;/PRE> &lt;?php -pg_freeResult ($qu); +} +echo "----------\n"; +?> +</PRE> +<?php +pg_free_result ($qu); pg_close ($db_conn); -?> +?> +]]> </programlisting> </example> </para> + <note> + <para> + Ab der Version 4.1.0 ist der Parameter <parameter>row</parameter> optional. + </para> + </note> </refsect1> </refentry> - <refentry id="function.pg-fetch-row"> + + <refentry id='function.pg-fetch-row'> <refnamediv> - <refname>pg_Fetch_Row</refname> - <refpurpose> - Holt einen Datensatz als numerisches Array - </refpurpose> + <refname>pg_fetch_row</refname> + <refpurpose>Holt einen Datensatz als nummerisches Array</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>array</type><methodname>pg_fetch_row</methodname> - <methodparam><type>int</type><parameter>result</parameter></methodparam> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>row</parameter></methodparam> </methodsynopsis> <para> - Rückgabewert: Ein Array, das mit dem gelesenen Datensatz - übereinstimmt oder &false;, wenn kein Datensatz mehr zurückgegeben - wird. - </para> - <para> - <function>pg_fetch_row</function> holt eine Datensatz aus dem - duch die Kennung festgelegten Ergebnis. Der Datensatz wird als - numerisches Array zurückgegeben. Jedes Ergebnisfeld wird in einem - Array-Offset gespeichert, angefangen bei Offset 0. - </para> - <para> - Ein nachfolgender Aufruf von <function>pg_fetch_row</function> - wird den nächste Datensatz im Ergebnissatz ausgeben, oder &false;, - wenn keine auszugebender Datensatz mehr vorhanden ist. + <function>pg_fetch_row</function> holt einen Datensatz der + Ergebnismenge, die durch die Ergebniskennung + <parameter>result</parameter> bezeichnet wird. Die Zeile + (Datensatz) wird als nummerisches Array zurückgegeben. Jedes + Ergebnisfeld wird in einer Arraykomponente gespeichert, angefangen + bei Offset 0. + </para> + <para> + Zurückgegeben wird ein Array, dessen Komponenten der gelesenen + Zeile entsprechen, oder &false;, falls keine Zeile gelesen + werden konnte. + </para> + <para> + Siehe auch: <function>pg_query</function>, + <function>pg_fetch_array</function>, + <function>pg_fetch_object</function> und + <function>pg_fetch_result</function>. </para> <para> - Siehe auch: <function>pg_fetch_array</function>, - <function>pg_fetch_object</function>, - <function>pg_result</function>. <example> - <title>Postgres fetch row</title> - <programlisting role="php"> -&lt;?php - $conn = pg_pconnect("","","","","verlag"); + <title>PostgreSQL fetch row</title> + <programlisting role='php'> +<![CDATA[ +<?php +$conn = pg_pconnect ("dbname=verlag"); if (!$conn) { echo "Es ist ein Fehler aufgetreten.\n"; exit; } -$result = pg_Exec ($conn, "SELECT * FROM autoren"); +$result = pg_query ($conn, "SELECT * FROM autoren"); if (!$result) { echo "Es ist ein Fehler aufgetreten.\n"; exit; } -$row = pg_fetch_row ($result, 0); -echo $row[0] . " &lt;- row\n"; +$num = pg_num_rows($result); -$row = pg_fetch_row ($result, 1); -echo $row[0] . " &lt;- row\n"; +for ($i=0; $i < $num; $i++) { + $r = pg_fetch_row($result, $i); -$row = pg_fetch_row ($result, 2); -echo $row[1] . " &lt;- row\n"; + for ($j=0; $j < count($r); $j++) { + echo "$r[$j]&nbsp;"; + } + + echo "<BR>"; +} ?> - </programlisting> +]]> + </programlisting> </example> </para> + <note> + <para> + Ab der Version 4.1.0 ist der Parameter <parameter>row</parameter> optional. + </para> + </note> </refsect1> </refentry> + - <refentry id="function.pg-fieldisnull"> + <refentry id='function.pg-field-is-null'> <refnamediv> - <refname>pg_FieldIsNull</refname> + <refname>pg_field_is_null</refname> <refpurpose>Prüft, ob ein Feld &null; ist</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_fieldisnull</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>int</type><methodname>pg_field_is_null</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>row</parameter></methodparam> <methodparam><type>mixed</type><parameter>field</parameter></methodparam> </methodsynopsis> <para> - Prüft, ob ein Feld &null; ist oder nicht. Die Funktion liefert 0 - zurück, wenn das Feld in der übergebenen Reihe nicht &null; ist und - 1, wenn das Feld &null; ist. Das zu prüfende Feld kann als Nummer - oder Feldname angegeben werden. Die Numerierung der Felder eines - Datensatzes beginnt bei 0. + <function>pg_field_is_null</function> prüft, ob ein Feld &null; + ist. Die Funktion liefert 1 zurück, wenn das Feld in der + übergebenen Zeile &null; ist und 0, wenn das Feld NICHT &null; + ist. Das zu prüfende Feld kann als Spaltenindex (Nummer) oder + Feldname (String) angegeben werden. Die Nummerierung der Felder + eines Datensatzes beginnt bei 0. </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_fieldisnull()</literal>. + </para> + </note> </refsect1> </refentry> - <refentry id="function.pg-fieldname"> + + <refentry id='function.pg-field-name'> <refnamediv> - <refname>pg_FieldName</refname> + <refname>pg_field_name</refname> <refpurpose>Gibt den Namen eines Feldes zurück</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>string</type><methodname>pg_fieldname</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>string</type><methodname>pg_field_name</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>field_number</parameter></methodparam> </methodsynopsis> <para> - <function>pg_FieldName</function> gibt den Feldnamen des Feldes, - das zu der übergebenen Feldnummer gehört, aus dem durch die - Kennung zu definierenden Ergebnis aus. Die Feldnummerierung - beginnt bei 0. + <function>pg_field_name</function> gibt den Feldnamen des + Feldes, das zu der übergebenen <parameter>field_number</parameter> + gehört, aus der durch <parameter>result</parameter> festgelegten + PostgreSQL Ergebnismenge zurück. Die Feldnummerierung beginnt + bei 0. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_fieldname()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_field_num</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-fieldnum"> + <refentry id='function.pg-field-num'> <refnamediv> - <refname>pg_FieldNum</refname> - <refpurpose>Liefert die Feldnummer eines Feldes</refpurpose> + <refname>pg_field_num</refname> + <refpurpose>Liefert die Feldnummer des angegebenen Feldes</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_fieldnum</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>int</type><methodname>pg_field_num</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>string</type><parameter>field_name</parameter></methodparam> </methodsynopsis> <para> - <function>pg_FieldNum</function> gibt die Nummer der Spalte aus, - die zu dem übergebenen Feldnamen in dem duch die Kennung - definierten Ergebnis gehört. Die Feldnumerierung beginnt bei 0. + <function>pg_field_num</function> gibt die Nummer der Spalte + (Feld) aus, die zu dem übergebenen <parameter>field_name</parameter> + in dem duch <parameter>result</parameter> bezeichneten + PostgreSQL Ergebnis gehört. Die Feldnummerierung beginnt bei 0. Diese Funktion gibt bei einem Fehler -1 aus. </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_fieldnum()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_field_name</function>. + </para> </refsect1> </refentry> + - <refentry id="function.pg-fieldprtlen"> + <refentry id='function.pg-field-prtlen'> <refnamediv> - <refname>pg_FieldPrtLen</refname> - <refpurpose>Liefert die angegebene Feldlänge</refpurpose> + <refname>pg_field_prtlen</refname> + <refpurpose>Gibt die Länge des Feldes zurück</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_fieldprtlen</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>int</type><methodname>pg_field_prtlen</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>row_number</parameter></methodparam> <methodparam><type>string</type><parameter>field_name</parameter></methodparam> </methodsynopsis> <para> - <function>pg_FieldPrtLen</function> gibt die aktuelle Länge - (Anzahl der Zeichen) eines bestimmten Wertes in einem Postgres - SQL-Ergebnis aus. Die Feldnumerierung beginnt bei 0. Die Funktion - liefert bei einem Fehler -1 zurück. + <function>pg_field_prtlen</function> gibt die aktuelle Länge + (Anzahl der Zeichen) eines bestimmten Wertes in einem PostgreSQL + <parameter>result</parameter> zurück. Die Feldnummerierung + beginnt bei 0. Die Funktion liefert bei einem Fehler -1 zurück. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_fieldprtlen()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_field_size</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-fieldsize"> + <refentry id='function.pg-field-size'> <refnamediv> - <refname>pg_FieldSize</refname> - <refpurpose> - Liefert die interne Speichergröße des benannten Felds + <refname>pg_field_size</refname> + <refpurpose> + Liefert die interne Speichergrösse des bezeichneten Felds </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_fieldsize</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>int</type><methodname>pg_field_size</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>field_number</parameter></methodparam> </methodsynopsis> <para> - <function>pg_FieldSize</function> liefert die interne - Speichergröße (in Bytes) des angegebenen Feldes in dem durch die - Kennung definierten Ergebnis. Die Feldnumerierung beginnt - bei 0. Eine Feldgröße von -1 deutet auf ein Feld mit variabler - Länge hin. Diese Funktion gibt im Fehlerfall &false; - zurück. + <function>pg_field_size</function> liefert die interne + Speichergrösse (in Bytes) des angegebenen Feldes in dem durch + <parameter>result</parameter> bezeichneten PostgreSQL Ergebnis + zurück. Die Feldnummerierung beginnt bei 0. Eine Feldgrösse von + -1 deutet auf ein Feld mit variabler Länge hin. Diese Funktion + gibt im Fehlerfall &false; zurück. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_fieldsize()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_field_len</function> und <function>pg_field_type</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-fieldtype"> + <refentry id='function.pg-field-type'> <refnamediv> - <refname>pg_FieldType</refname> - <refpurpose> + <refname>pg_field_type</refname> + <refpurpose> Liefert den Feldtyp der entsprechenden Feldnummer </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>string</type><methodname>pg_fieldtype</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>string</type><methodname>pg_field_type</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>field_number</parameter></methodparam> </methodsynopsis> <para> - <function>pg_FieldType</function> liefert einen String, der den - Feldtyp des bezeichneten Feldes aus einem definierten Ergebnis - enthält. Die Feldnumerierung beginnt bei 0. + <function>pg_field_type</function> liefert einen String, der den + Feldtyp des mit <parameter>field_number</parameter> bezeichneten + Feldes aus dem mit <parameter>result</parameter> bezeichneten + PostgreSQL-Ergebnis enthält. Die Feldnummerierung beginnt bei 0. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_fieldtype()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_field_len</function> und <function>pg_field_name</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-freeresult"> - <refnamediv> - <refname>pg_FreeResult</refname> - <refpurpose> - Gibt durch Ergebnisse belegten Speicher frei + <refentry id='function.pg-free-result'> + <refnamediv> + <refname>pg_free_result</refname> + <refpurpose>Gibt den durch Ergebnisse belegten Speicher frei </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_freeresult</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>bool</type><methodname>pg_free_result</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> </methodsynopsis> <para> - <function>pg_FreeResult</function> braucht nur aufgerufen werden, - wenn man befürchten muss, dass während des Skriptablaufes zu viel - Speicher verbraucht wird. Der Speicher, den Ergebnisse belegen, - wird automatisch nach Beendigung des Skriptes freigegeben. Wer - allerdings sicher ist, die Ergebnisdaten innerhalb des Skriptes - nicht mehr zu benötigen, kann <function>pg_FreeResult</function> - mit der Ergebniskennung als Argument aufrufen, und der - entsprechende Speicher wird freigegeben. + <function>pg_free_result</function> braucht nur aufgerufen zu + werden, wenn man befürchten muss, dass während des + Skripts zu viel Speicher verbraucht wird. Der Speicherplatz, den + Ergebnisse belegen, wird automatisch nach Beendigung des + Skriptes freigegeben. Wer allerdings sicher ist, die + Ergebnisdaten innerhalb des Skriptes nicht mehr zu benötigen, + kann <function>pg_free_result</function> mit dem Parameter + <parameter>result</parameter> aufrufen, und der + entsprechende Speicher wird freigegeben. Bei Erfolg wird &true; + zurückgegeben und &false; sonst. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_freeresult()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_query</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-getlastoid"> + <refentry id='function.pg-last-oid'> <refnamediv> - <refname>pg_GetLastOid</refname> - <refpurpose>Gibt die letzte Objektkennung aus</refpurpose> + <refname>pg_last_oid</refname> + <refpurpose> + Gibt den Objektbezeichner eines neu eingefügten Datensatzes zurück + </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_getlastoid</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>int</type><methodname>pg_last_oid</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> </methodsynopsis> <para> - <function>pg_GetLastOid</function> kann verwendet werden, um die - einem eingefügten Tupel zugeordnete OID zu erhalten, wenn die - Ergebniskennung vom letzten mit <function>pg_Exec</function> - ausgeführten Befehls benutzt wird und dieser ein SQL INSERT war. - Die Funktion gibt ein positives Integer zurück, wenn eine gültige - OID existiert. -1 wird zurückgegeben, wenn ein Fehler aufgetreten - ist oder der letzte mit <function>pg_Exec</function> abgesetzte - Befehl kein INSERT war. + <function>pg_last_oid</function> wird benutzt, um den Object + Identifier <varname>oid</varname>, der einem eingefügten + Datensatz (Tupel) zugewiesen wurde, auszulesen. + <parameter>result</parameter> muss die Ergebniskennung des + letzten Kommandos sein, das mit <function>pg_query</function> an + den Server gesendet wurde, und dieses Kommando muss ein INSERT + gewesen sein. Die Funktion gibt einen positiven Integerwert + zurück, wenn es einen gültigen <varname>oid</varname> gibt. + Falls ein Fehler auftritt, oder das letzte Kommando, das mit + <function>pg_query</function> gesendet wurde, kein INSERT war, + oder der INSEERT fehlgeschlagen ist, wird &false; zurückgegeben. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_getlastoid()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_query</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-host"> + <refentry id='function.pg-host'> <refnamediv> - <refname>pg_Host</refname> - <refpurpose>Gibt den Hostnamen zurück</refpurpose> + <refname>pg_host</refname> + <refpurpose> + Gibt den Namen des Host zurück, zu dem verbunden wurde </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>string</type><methodname>pg_host</methodname> - <methodparam><type>int</type><parameter>connection_id</parameter></methodparam> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - <function>pg_Host</function> liefert den Hostnamen des - Datenbankservers, der durch die übergebene Kennung verbunden ist. + <function>pg_host</function> gibt den Namen des Hosts zurück, zu + dem mit der angegebenen PostgreSQL <parameter>connection</parameter> + verbunden wurde. + </para> + <para> + Siehe auch <function>pg_connect</function> und + <function>pg_pconnect</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-loclose"> + + <refentry id='function.pg-last-notice'> <refnamediv> - <refname>pg_loclose</refname> - <refpurpose>Schließt ein großes Objekt</refpurpose> + <refname>pg_last_notice</refname> + <refpurpose> + Gibt die letzte NOTICE Meldung des PostgreSQL Servers zurück + </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>void</type><methodname>pg_loclose</methodname> - <methodparam><type>int</type><parameter>fd</parameter></methodparam> + <type>string</type><methodname>pg_last_notice</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - <function>pg_loclose</function> schließt ein Large - Object. <parameter>fd</parameter> ist der Dateibeschreiber des mit - <function>pg_loopen</function> geöffneten Objekts. + <function>pg_last_notice</function> gibt die letzte NOTICE + Meldung des PostgreSQL Servers für die angegebene + <parameter>connection</parameter> zurück. Der PostgreSQL Server + sendet zu unterschiedlichen Anlässen NOTICE Meldungen an den + Client, beispielsweise, wenn eine Transaktion nicht weiter + ausgeführt werden kann. In diesem Fall kann man mit der Funktion + <function>pg_last_notice</function> das Senden nutzloser + Abfragen vermeiden, indem man prüft, ob eine NOTICE Meldung sich + auf die Transaktion bezieht oder nicht. + </para> + <warning> + <para> + Diese Funktion ist EXPERIMENTELL und noch nicht vollständig + implementiert. <function>pg_last_notice</function> wurde mit + der Version 4.0.6 eingeführt. Diese Version hat jedoch Probleme + mit der Verarbeitung der NOTICE Meldungen. Von der Benutzung des + PostgreSQL-Moduls in PHP 4.0.6 wird abgeraten, auch wenn Sie + die Funktion <function>pg_last_notice</function> nicht nutzen. + </para> + <para> + In der Version 4.3.0 wird diese Funktion vollständig + implementiert sein. Die Versionen vor 4.3.0 ignorieren den + Parameter <parameter>connection</parameter>. + </para> + </warning> + <para> + Beachten Sie, dass Sie das Ausgeben der NOTICE Meldungen auf + optional setzen können, indem Sie <literal>pgsql.ignore_notice</literal> + ini in PHP 4.3.0 auf den Wert 1 setzen. + </para> + <para> + Das Protokollieren der NOTICE Meldungen kann auf optional + gesetzt werden, indem <literal>pgsql.log_notice</literal> ini in + PHP 4.3.0 auf den Wert 0 gesetzt wird. NOTICE Meldungen können + nicht protokolliert werden, es sei denn + <literal>pgsql.ignore_notice</literal> hat den Wert 0. + </para> + <para> + Siehe auch <function>pg_query</function> und + <function>pg_last_error</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-locreate"> + <refentry id='function.pg-lo-close'> <refnamediv> - <refname>pg_locreate</refname> - <refpurpose>Erstellt ein großes Objekt</refpurpose> + <refname>pg_lo_close</refname> + <refpurpose>Schliesst ein Large Object</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_locreate</methodname> - <methodparam><type>int</type><parameter>conn</parameter></methodparam> + <type>bool</type><methodname>pg_lo_close</methodname> + <methodparam><type>resource</type><parameter>large_object</parameter></methodparam> </methodsynopsis> <para> - <function>pg_locreate</function> erstellt ein Large - Object und liefert dessen OID zurück. - <parameter>conn</parameter> bezeichnet eine gültige - Datenbankverbindung. Die PostgresSQL Zugriffsmöglichkeiten - INV_READ, INV_WRITE und INV_ARCHIVE werden nicht unterstützt, das - Objekt wird stets mit Lese- und Schreibzugriff - erstellt. INV_ARCHIVE wird seit Version 6.3 und höher von - PostgresSQL selbst nicht mehr unterstützt. + <function>pg_lo_close</function> schliesst ein Large Object. + <parameter>large_object</parameter> ist eine Referenz auf das + Large Object, das mit <function>pg_lo_open</function> geöffnet wurde. + </para> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt werden. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_loclose()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_lo_open</function>, + <function>pg_lo_create</function> und + <function>pg_lo_import</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-loexport"> + <refentry id='function.pg-lo-create'> <refnamediv> - <refname>pg_loexport</refname> - <refpurpose>export a large object to file</refpurpose> + <refname>pg_lo_create</refname> + <refpurpose>Erzeugt ein Large Object</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>bool</type><methodname>pg_loexport</methodname> - <methodparam><type>int</type><parameter>oid</parameter></methodparam> - <methodparam><type>int</type><parameter>file</parameter></methodparam> - <methodparam choice="opt"><type>int</type><parameter>connection_id</parameter></methodparam> + <type>int</type><methodname>pg_lo_create</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - The <parameter>oid</parameter> argument specifies the object id - of the large object to export and the <parameter>filename</parameter> - argument specifies the pathname of the file. Returns &false; if an error - occurred, &true; otherwise. Remember that handling large objects in - PostgreSQL must happen inside a transaction. + <function>pg_lo_create</function> erzeugt ein Large Object und + liefert dessen <varname>oid</varname> zurück. + <parameter>connection</parameter> bezeichnet eine gültige + Datenbankverbindung, die mit <function>pg_connect</function> + oder <function>pg_pconnect</function> geöffnet wurde. Die + Zugriffsmethoden von PostgreSQL, INV_READ, INV_WRITE und + INV_ARCHIVE werden nicht unterstützt, ein Large Object wird + immer mit Lese- und Schreibzugriff erzeugt. INV_ARCHIVE wurde + von PostgreSQL selber (ab Version 6.3 und höher) entfernt. Die + Funktion gibt den Objektbezeichner oid des Large Objects zurück + oder &false;, falls ein Fehler auftrat. + </para> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt + werden. </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_locreate()</literal>. + </para> + </note> </refsect1> </refentry> + - <refentry id="function.pg-loimport"> + <refentry id='function.pg-lo-export'> <refnamediv> - <refname>pg_loimport</refname> - <refpurpose>import a large object from file</refpurpose> + <refname>pg_lo_export</refname> + <refpurpose>Exportiert ein Large Object in eine Datei</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_loimport</methodname> - <methodparam><type>int</type><parameter>file</parameter></methodparam> - <methodparam choice="opt"><type>int</type><parameter>connection_id</parameter></methodparam> + <type>bool</type><methodname>pg_lo_export</methodname> + <methodparam><type>int</type><parameter>oid</parameter></methodparam> + <methodparam><type>string</type><parameter>pathname</parameter></methodparam> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - The <parameter>filename</parameter> argument specifies the pathname - of the file to be imported as a large object. Returns &false; if an error - occurred, object id of the just created large object otherwise. Remember - that handling large objects in PostgreSQL must happen inside - a transaction. + Das Argument <parameter>oid</parameter> ist der Objektbezeichner + des Large Objects, oid, das exportiert werden soll und + <parameter>pathname</parameter> ist der Pfad der Datei. Falls + ein Fehler auftritt, wird &false; zurückgegeben, anderenfalls + &true;. + </para> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt + werden. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_loexport()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_lo_import</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-loopen"> + + <refentry id='function.pg-lo-import'> <refnamediv> - <refname>pg_loopen</refname> - <refpurpose>Öffnet ein grosses Objekt</refpurpose> + <refname>pg_lo_import</refname> + <refpurpose> + Importiert ein Large Object aus einer Datei</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_loopen</methodname> - <methodparam><type>int</type><parameter>conn</parameter></methodparam> - <methodparam><type>int</type><parameter>objoid</parameter></methodparam> - <methodparam><type>string</type><parameter>mode</parameter></methodparam> + <type>int</type><methodname>pg_lo_import</methodname> + <methodparam><type>string</type><parameter>pathname</parameter></methodparam> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - <function>pg_loopen</function> öffnet ein Large Object - und liefert einen Dateibeschreiber des großen Objektes. Dieser - beinhaltet Informationen über die Verbindung. Der - Dateibeschreiber des großen Objektes sollte daher geschlossen - werden, bevor die Verbindung beendet wird. - <parameter>objoid</parameter> definiert die gültige OID eines - grossen Objektes und <parameter>mode</parameter> kann "r", "w" - oder "rw" sein. + Das Argument <parameter>pathname</parameter> bezeichnet den Pfad + zu der Datei, die als Large Object importiert werden soll. Die + Funktion gibt den Objektbezeichner, oid, des gerade erzeugten + Large Objects zurück oder &false;, falls ein Fehler auftrat. + </para> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt + werden. + </para> + &note.sm.uidcheck; + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_loimport()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_lo_export</function> und + <function>pg_lo_open</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-loread"> + + <refentry id='function.pg-lo-open'> <refnamediv> - <refname>pg_loread</refname> - <refpurpose>Liest ein grosses Objekt</refpurpose> + <refname>pg_lo_open</refname> + <refpurpose>Öffnet ein Large Object</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>string</type><methodname>pg_loread</methodname> - <methodparam><type>int</type><parameter>fd</parameter></methodparam> - <methodparam><type>int</type><parameter>len</parameter></methodparam> + <type>resource</type><methodname>pg_lo_open</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> + <methodparam><type>int</type><parameter>oid</parameter></methodparam> + <methodparam><type>string</type><parameter>mode</parameter></methodparam> </methodsynopsis> <para> - <function>pg_loread</function> liest höchstens - <parameter>len</parameter> Bytes eines grossen Objektes und gibt - dies als String zurück. <parameter>fd</parameter> legt einen - gültigen Dateibeschreiber fest und <parameter>len</parameter> - definiert die maximal erlaubte Grösse des Segmentes des großen - Objektes. + <function>pg_lo_open</function> öffnet ein Large Object und + gibt einen Handler (eine Referenz) zurück. Der Handler kapselt + Informationen über die Verbindung. <parameter>oid</parameter> + ist ein gültiger Objektbezeichner eines Large Objects und + <parameter>mode</parameter> gibt die Zugriffsart an. Mögliche + Werte für <parameter>mode</parameter> sind "r", "w" oder "rw". + Bei einem Fehler wird &false; zurückgegeben. + </para> + <warning> + <para> + Bevor Sie die Datenbankverbindung schliessen, müssen Sie das Large + Object wieder schliessen. + </para> + </warning> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt + werden. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_loopen()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_lo_close</function> und + <function>pg_lo_create</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-loreadall"> + <refentry id='function.pg-lo-read'> <refnamediv> - <refname>pg_loreadall</refname> - <refpurpose>Liest ein grosses Objekt vollständig</refpurpose> + <refname>pg_lo_read</refname> + <refpurpose>Liest ein Large Object</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>void</type><methodname>pg_loreadall</methodname> - <methodparam><type>int</type><parameter>fd</parameter></methodparam> + <type>string</type><methodname>pg_lo_read</methodname> + <methodparam><type>resource</type><parameter>large_object</parameter></methodparam> + <methodparam><type>int</type><parameter>len</parameter></methodparam> </methodsynopsis> <para> - <function>pg_loreadall</function> liest ein grosses Objekt und - reicht es sofort nach dem Senden der entsprechenden Header an - den Browser weiter. Wird hauptsächlich für Binärdaten wie Bilder - oder Sound genutzt. + <function>pg_lo_read</function> liest höchstens + <parameter>len</parameter> Bytes eines grossen Objektes und gibt + dies als String zurück. Das Argument <parameter>large_object</parameter> + bezeichnet einen gültigen Handler für ein Large Object und + <parameter>len</parameter> gibt die maximal erlaubte Grösse + des Segmentes des Large Objects an. Bei einem Fehler wird &false; + zurückgegeben. + </para> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt + werden. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_loread()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_lo_read_all</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-lounlink"> + + <refentry id='function.pg-lo-seek'> <refnamediv> - <refname>pg_lounlink</refname> - <refpurpose>Ein grosses Objekt löschen</refpurpose> + <refname>pg_lo_seek</refname> + <refpurpose> + Seeks position of large object + </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>void</type><methodname>pg_lounlink</methodname> - <methodparam><type>int</type><parameter>conn</parameter></methodparam> - <methodparam><type>int</type><parameter>lobjid</parameter></methodparam> + <type>bool</type><methodname>pg_lo_seek</methodname> + <methodparam><type>resource</type><parameter>large_object</parameter></methodparam> + <methodparam><type>int</type><parameter>offset</parameter></methodparam> + <methodparam choice='opt'><type>int</type><parameter>whence</parameter></methodparam> </methodsynopsis> <para> - <function>pg_lounlink</function> löscht das durch den - <parameter>lobjid</parameter> Dateibeschreiber festgelegte grosse - Objekt. + <function>pg_lo_seek</function> seeks position of large object + resource. <parameter>whence</parameter> is PGSQL_SEEK_SET, + PGSQL_SEEK_CUR or PGSQL_SEEK_END. + </para> + <para> + Siehe auch <function>pg_lo_tell</function>. + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-lo-tell'> + <refnamediv> + <refname>pg_lo_tell</refname> + <refpurpose> + Returns current position of large object + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>int</type><methodname>pg_lo_tell</methodname> + <methodparam><type>resource</type><parameter>large_object</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_lo_tell</function> returns current position (offset + from the beginning of large object). + </para> + <para> + Siehe auch <function>pg_lo_seek</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-lowrite"> + + <refentry id='function.pg-lo-read-all'> <refnamediv> - <refname>pg_lowrite</refname> - <refpurpose>Schreibt in ein grosses Objekt</refpurpose> + <refname>pg_lo_read_all</refname> + <refpurpose> + Liest ein Large Object vollständig und reicht es direkt an den + Browser weiter + </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_lowrite</methodname> - <methodparam><type>int</type><parameter>fd</parameter></methodparam> - <methodparam><type>string</type><parameter>buf</parameter></methodparam> + <type>int</type><methodname>pg_lo_read_all</methodname> + <methodparam><type>resource</type><parameter>large_object</parameter></methodparam> </methodsynopsis> <para> - <function>pg_lowrite</function> schreibt aus einer Variablen - höchstens <parameter>buf</parameter> in ein grosses Objekt und + <function>pg_lo_read_all</function> liest ein Large Object + vollständig und übergibt es direkt an den Browser, nachdem alle + entsprechenden Header gesendet wurden. Die Funktion wird + hauptsächlich für Binärdaten wie Bilder oder Sound genutzt. + Falls ein Fehler aufgetreten ist, wird &false; zurückgegeben. + </para> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt + werden. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_loreadall()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_lo_read</function>. + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-lo-unlink'> + <refnamediv> + <refname>pg_lo_unlink</refname> + <refpurpose>Löscht ein Large Object</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>bool</type><methodname>pg_lo_unlink</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> + <methodparam><type>int</type><parameter>oid</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_lo_unlink</function> löscht das Large Object mit + dem Objektbezeichner <parameter>oid</parameter>. Bei Erfolg + wird &true; zurückgegeben, &false; sonst. + </para> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt + werden. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_lounlink()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_lo_create</function> und + <function>pg_lo_import</function>. + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-lo-write'> + <refnamediv> + <refname>pg_lo_write</refname> + <refpurpose>Schreibt in ein Large Object</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>int</type><methodname>pg_lo_write</methodname> + <methodparam><type>resource</type><parameter>large_object</parameter></methodparam> + <methodparam><type>string</type><parameter>data</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_lo_write</function> schreibt aus einer Variablen + höchstens <parameter>data</parameter> in ein grosses Objekt und liefert die Anzahl der tasächlich geschriebenen Bytes zurück, - oder &false;, wenn ein Fehler auftritt. <parameter>fd</parameter> - ist der Dateibeschreiber des grossen Objektes aus - <function>pg_loopen</function>. + oder &false;, wenn ein Fehler auftritt. + <parameter>large_object</parameter> + ist der Handler des Large Objects, der von der Funktion + <function>pg_lo_open</function> zurückgegeben wurde. + </para> + <para> + Um die Large Object (lo) Schnittstelle benutzen zu können, + müssen die Kommandos innerhalb einer Transaktion ausgeführt + werden. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_lowrite()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_lo_create</function> und + <function>pg_lo_open</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-numfields"> + <refentry id='function.pg-num-fields'> <refnamediv> - <refname>pg_NumFields</refname> - <refpurpose>Gibt die Anzahl der Felder aus</refpurpose> + <refname>pg_num_fields</refname> + <refpurpose>Gibt die Anzahl der Felder zurück</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_numfields</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>int</type><methodname>pg_num_fields</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> </methodsynopsis> <para> - <function>pg_NumFields</function> liefert die Anzahl der Felder - (Spalten) eines PostgreSQL-Ergebnisses. Das Argument ist eine - gültige Ergebniskennung, die von <function>pg_Exec</function> - zurückgegeben wurde. Diese Funktion gibt im Fehlerfall -1 aus. + <function>pg_num_fields</function> liefert die Anzahl der Felder + (Spalten) eines PostgreSQL <parameter>result</parameter>. Das + Argument ist eine gültige Ergebniskennung, die von + <function>pg_query</function> zurückgegeben wurde. Diese Funktion + gibt im Fehlerfall -1 aus. + </para> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_numfields()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_num_rows</function> und + <function>pg_affected_rows</function>. </para> </refsect1> </refentry> + - <refentry id="function.pg-numrows"> + <refentry id='function.pg-num-rows'> <refnamediv> - <refname>pg_NumRows</refname> - <refpurpose>Gibt die Anzahl der Zeilen aus</refpurpose> + <refname>pg_num_rows</refname> + <refpurpose>Gibt die Anzahl der Zeilen zurück</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>int</type><methodname>pg_numrows</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>int</type><methodname>pg_num_rows</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> </methodsynopsis> <para> - <function>pg_NumRows</function> liefert die Anzahl der Zeilen - in einem PostgreSQL-Ergebnis. Das Argument ist eine gültige - Ergebniskennung, die von <function>pg_Exec</function> - zurückgegeben wurde. Diese Funktion gibt im Fehlerfall -1 aus. + <function>pg_num_rows</function> liefert die Anzahl der Zeilen + in einem PostgreSQL <parameter>result</parameter>. Das Argument + <parameter>result</parameter> ist eine gültige Ergebniskennung, + die von <function>pg_query</function> zurückgegeben wurde. Diese + Funktion gibt im Fehlerfall -1 zurück. + </para> + <note> + <para> + Um die Anzahl der von einer INSERT-, UPDATE- oder + DELETE-Operation betroffener Zeilen zu erhalten, benutzen Sie + die Funktion <function>pg_affected_rows</function>. + </para> + </note> + <note> + <para> + Diese Funktion ersetzt die Funktion <literal>pg_numrows()</literal>. + </para> + </note> + <para> + Siehe auch <function>pg_num_fields</function> und + <function>pg_affected_rows</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-options"> + + <refentry id='function.pg-options'> <refnamediv> - <refname>pg_Options</refname> - <refpurpose>Liefert Verbindungsoptionen</refpurpose> + <refname>pg_options</refname> + <refpurpose>Liefert die Verbindungsoptionen</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>string</type><methodname>pg_options</methodname> - <methodparam><type>int</type><parameter>connection_id</parameter></methodparam> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - <function>pg_Options</function> liefert einen String, der die - Optionen einer durch die Kennung bestimmtenn Verbindung enthält. + <function>pg_options</function> liefert einen String, der die + Verbindungsoptionen der durch <parameter>connection</parameter> + bezeichneten Verbindung enthält. </para> </refsect1> </refentry> - <refentry id="function.pg-pconnect"> + <refentry id='function.pg-pconnect'> <refnamediv> - <refname>pg_pConnect</refname> - <refpurpose>Stellt eine persistente Datenbankverbindung her</refpurpose> + <refname>pg_pconnect</refname> + <refpurpose>Öffnet eine persistente PostgreSQL Verbindung</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>int</type><methodname>pg_pconnect</methodname> - <methodparam><type>string</type><parameter>conn_string</parameter></methodparam> + <methodparam><type>string</type><parameter>connection_string</parameter></methodparam> </methodsynopsis> <para> - Öffnet eine persistente Verbindung zu einer PostgreSQL-Datenbank - und liefert bei Erfolg die Verbindungskennung zurück - oder &false;, - falls keine Verbindung hergestellt werden konnte. - Alle Verbindungsdaten sind in dem String - <parameter>conn_string</parameter> zusammengefasst. + <function>pg_pconnect</function> öffnet eine Verbindung zu einer + PostgreSQL Datenbank. Zurückgegeben wird eine + Verbindungskennung, die von anderen Funktionen benötigt wird. </para> <para> - Die von dieser Funktion - zurückgelieferte Verbindungskennung wird von anderen - PostgreSQL-Funktionen benötigt. Es ist auch möglich, mehrere - Verbindungen gleichzeitig zu öffnen. + Bei Erfolg wird eine Verbindungskennung zurückgegeben, oder + &false;, falls die Verbindung nicht zustandekam. Die Argumente + sollten als ein String innerhalb eines Paares von Anführungszeichen + angegeben werden. Verfügbar sind die Argumente: + <parameter>host</parameter>, <parameter>port</parameter>, + <parameter>tty</parameter>, <parameter>options</parameter>, + <parameter>dbname</parameter>, <parameter>user</parameter>, and + <parameter>password</parameter>. + </para> + <example> + <title>pg_pconnect benutzen</title> + <programlisting role='php'> +<![CDATA[ +<?php +$dbconn = pg_connect ("dbname=mary"); +// verbindet zu einer Datenbank namens "mary" +$dbconn2 = pg_connect ("host=localhost port=5432 dbname=mary"); +// verbindet zu einer Datenbank namens "mary" auf dem Host +// "localhost" über den Port "5432" +$dbconn3 = pg_connect ("host=sheep port=5432 dbname=mary user=lamb password=foo"); +// verbindet zu einer Datenbank namens "mary" auf dem Host +// "sheep" mit Benutzername "lamb" und Passwort "FOO" +$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar"; +$dbconn4 = pg_connect ($conn_string); +// verbindet zu einer Datenbank namens "test" auf dem Host +// "sheep" mit dem Benutzernamen "lamb" und dem Passwort "bar" +?> +]]> + </programlisting> + </example> + <para> + Falls die Funktion <function>pg_pconnect</function> ein zweites + Mal mit denselben Argumenten aufgerufen wird, so wird keine neue + Verbindung erzeugt, sondern die Verbindungskennung der bereits + geöffneten Verbindung zurückgegeben. Sie können mehrere + Verbindungen zu derselben Datenbank öffnen, wenn Sie + unterschiedliche Verbindungsstrings angeben. </para> <para> - Die möglichen Argumente der Verbindungsdaten sind - <parameter>dbname</parameter> - <parameter>port</parameter>, <parameter>host</parameter>, - <parameter>tty</parameter>, <parameter>options</parameter>, - <parameter>user</parameter>, und <parameter>password</parameter>. + Die Syntax mit mehreren Parametern für <function>pg_pconnect</function> + <command>$conn = pg_pconnect ("host", "port", "options", "tty", + "dbname") + </command> + ist veraltet und sollte nicht mehr verwendet werden. </para> <para> - Die alte Syntax - <methodsynopsis> - <type>int</type><methodname>pg_pconnect</methodname> - <methodparam><type>string</type><parameter>host</parameter></methodparam> - <methodparam><type>string</type><parameter>port</parameter></methodparam> - <methodparam><type>string</type><parameter>options</parameter></methodparam> - <methodparam><type>string</type><parameter>tty</parameter></methodparam> - <methodparam><type>string</type><parameter>dbname</parameter></methodparam> - </methodsynopsis> - sollte nicht mehr verwendet werden. + Um persistente Verbindungen zu erlauben, muss die Direktive + <link linkend='ini.pgsql.allow-persistent'>pgsql.allow_persistent</link> + in der Datei &php.ini; auf &quot;On&quot; gesetzt sein. (Dies + ist der Standardwert.) + Die maximale Anzahl persistenter Verbindungen kann mit der + Direktive <link linkend='ini.pgsql.max-persistent'>pgsql.max_persistent</link> + in &php.ini; angegeben werden. (Der Standardwert ist + -1, was unbegrenzt bedeutet). + Die Gesamtzahl aller Verbindungen kann mit der Direktive + <link linkend='ini.pgsql.max-links'>pgsql.max_links</link> in + &php.ini; angegeben werden + </para> + <para> + Die Funktion <function>pg_close</function> schliesst keine + persistenten Verbindungen, die mit + <function>pg_pconnect</function> erzeugt wurden. </para> <para> Siehe auch <function>pg_connect</function>. @@ -1061,263 +1740,304 @@ </refsect1> </refentry> - <refentry id="function.pg-port"> + + <refentry id='function.pg-port'> <refnamediv> - <refname>pg_Port</refname> - <refpurpose>Gibt die Portnummer aus</refpurpose> + <refname>pg_port</refname> + <refpurpose> + Gibt die Portnummer zurück, mit der die Verbiundung aufgebaut wurde + </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>int</type><methodname>pg_port</methodname> - <methodparam><type>int</type><parameter>connection_id</parameter></methodparam> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - <function>pg_Port</function> Gibt die Portnummer der - durch die Kennung bezeichneten PostgresSQL-Verbindung aus. + <function>pg_port</function> gibt die Portnummer der + durch die Kennung <parameter>connection</parameter> bezeichneten + PostgresSQL-Verbindung zurück. </para> </refsect1> </refentry> - <refentry id="function.pg-put-line"> + + <refentry id='function.pg-put-line'> <refnamediv> <refname>pg_put_line</refname> - <refpurpose>Sendet eine NULL-terminierte Zeichenkette zum PostgreSQL backend</refpurpose> + <refpurpose> + Sendet eine NULL-terminierte Zeichenkette zum PostgreSQL Server</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>bool</type><methodname>pg_put_line</methodname> - <methodparam choice="opt"><type>resource</type><parameter>connection_id</parameter></methodparam> - <methodparam><type>string</type><parameter>Daten</parameter></methodparam> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> + <methodparam><type>string</type><parameter>data</parameter></methodparam> </methodsynopsis> <para> <function>pg_put_line</function> sendet eine NULL-terminierte - Zeichenkette - an den PostgreSQL backend server. Nützliche ist die Funktion um - bespielsweise Daten mit hoher Geschnwindigkeit in eine Datenbanktabelle - einzufügen, wenn dieser Vorgang mit einer PostgreSQL copy-Operation - begonnen wurde. - Der abschließende NULL-character + Zeichenkette an den PostgreSQL Server. Nützlich ist die + Funktion um bespielsweise Daten mit hoher Geschnwindigkeit in + eine Datenbanktabelle einzufügen, ausgelöst durch eine + PostgreSQL copy-Operation. Das abschliessende NULL-Zeichen wird automatisch hinzugefügt. Liefert &true; im Erfolgsfall, sonst &false;. </para> <note> <para> - Beachten sie, dass die Anwendung explizit die beiden Zeichen "\." - in der letzten Zeile senden muss, um damit dem backend das Datenende - anzuzeigen. + Beachten Sie, dass eine Anwendung explizit die beiden Zeichen + "\." am Ende der letzten Zeile senden muss, um dem Server das + Ende der Übertragung anzuzeigen. </para> </note> <para> + Siehe auch <function>pg_end_copy</function>. <example> <title>Schnelles Einfügen von Daten in eine Tabelle</title> - <programlisting role="php"> -&lt;?php + <programlisting role='php'> +<![CDATA[ +<?php $conn = pg_pconnect ("dbname=foo"); - pg_exec($conn, "create table bar (a int4, b char(16), d float8)"); - pg_exec($conn, "copy bar from stdin"); + pg_query($conn, "create table bar (a int4, b char(16), d float8)"); + pg_query($conn, "copy bar from stdin"); pg_put_line($conn, "3\thello world\t4.5\n"); pg_put_line($conn, "4\tgoodbye world\t7.11\n"); pg_put_line($conn, "\\.\n"); pg_end_copy($conn); ?> +]]> </programlisting> </example> </para> - <para> - Siehe auch <function>pg_end_copy</function>. - </para> </refsect1> </refentry> - <refentry id="function.pg-result"> + + <refentry id='function.pg-fetch-result'> <refnamediv> - <refname>pg_Result</refname> - <refpurpose>Liefert Werte eines bezeichneten Ergebnisses</refpurpose> + <refname>pg_fetch_result</refname> + <refpurpose>Liefert Werte aus einer Ergebnismenge</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> - <type>mixed</type><methodname>pg_result</methodname> - <methodparam><type>int</type><parameter>result_id</parameter></methodparam> + <type>mixed</type><methodname>pg_fetch_result</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> <methodparam><type>int</type><parameter>row_number</parameter></methodparam> - <methodparam><type>mixed</type><parameter>fieldname</parameter></methodparam> + <methodparam><type>mixed</type><parameter>field</parameter></methodparam> </methodsynopsis> <para> - <function>pg_Result</function> liefert Werte aus einem durch - <function>pg_Exec</function> produzierten Ergebnis, dessen - Kennung übergeben werden muß. - <parameter>row_number</parameter> und - <parameter>fieldname</parameter> geben an, welche Zelle der - Ergebnistabelle zurückgegeben werden soll. Die Zeilennumerierung - beginnt bei 0. Anstatt des Feldnamens kann auch der Feldindex als - Zahl ohne Anführungszeichen angegeben werden. Der Feldindex - beginnt bei 0. - </para> - <para> - PostgreSQL hat viele eingebaute Typen, und nur die grundlegenden - werden hier direkt unterstützt. Alle Formen von Interger, Boolean - und OID-Typen werden als Integer-Werte zurückgegeben, alle Formen - von float und real als double. Alle anderen Formen, - einschließlich der Arrays, werden als Strings in der durch den + <function>pg_fetch_result</function> liefert Werte aus einer + Ergebnismenge <parameter>result</parameter>, die von + <function>pg_query</function> zurückgegeben wurde. Der Parameter + <parameter>row_number</parameter> ist ein Integerwert. + <parameter>field</parameter> ist entweder der Feldname als + String oder der Feldindex als integer. Die Parameter + <parameter>row_number</parameter> + und <parameter>field</parameter> bezeichnen die Zelle der + Ergebnismenge, die ausgelesen werden soll. Die + Zeilennummerierung beginnt bei 0. anstatt die Felder durch ihre + Namen anzugeben, können Siehe auch auch den Feldindex benutzen. Dieser + beginnt ebenso bei 0. + </para> + <para> + PostgreSQL unterstützt viele eingebauten Datentypen und nur die + grundlegenden werden direkt unterstützt. Alle Formen von + <type>integer</type>-, <type>boolean</type>- und void-Typen + <!-- FIXME: is that still true? PHP supports boolean&null now... --> + <!-- Yes, supporting boolean&null breaks scripts. pg_fetch_array() + can be used instead. I might take of this issue with additional + ini directive. yohgaki@php.net --> + werden als <type>integer</type>-Werte zurückgegeben. Alle Formen + von float- und real-Typen werden als <type>float</type>-Werte + zurückgegeben. Alle anderen Typen, einschliessllich Arrays + werden als Strings zurückgegeben, in der durch den <command>psql</command>-Befehl bekannten - PostgreSQL-Standardformatierung zurückgeliefert. + PostgreSQL-Standardformatierung. </para> </refsect1> </refentry> + - <refentry id="function.pg-set-client-encoding"> + <refentry id='function.pg-set-client-encoding'> <refnamediv> <refname>pg_set_client_encoding</refname> <refpurpose> - Set the client encoding + Setzt die Client Kodierung </refpurpose> </refnamediv> <refsect1> - <title>Description</title> + <title>Beschreibung</title> <methodsynopsis> <type>int</type><methodname>pg_set_client_encoding</methodname> - <methodparam choice="opt"><type>int</type><parameter>connection</parameter></methodparam> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> <methodparam><type>string</type><parameter>encoding</parameter></methodparam> </methodsynopsis> <para> - The function set the client encoding and return 0 if success or - -1 if error. + <function>pg_set_client_encoding</function> setzt die Kodierung des Clients und gobt bei Erfolg 0 zurück, anderenfalls -1. </para> <para> - <parameter>encoding</parameter> is the client - encoding and can be either : - SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW, UNICODE, - MULE_INTERNAL, LATINX (X=1...9), KOI8, WIN, ALT, - SJIS, BIG5, WIN1250. + <parameter>encoding</parameter> isd ie Kodierung des Clients und + kann einen der Werte SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW, + UNICODE, MULE_INTERNAL, LATINX (X=1...9), KOI8, WIN, ALT, SJIS, + BIG5 odeer WIN1250 haben. Die verfügbaren Kodierungen sind von + Ihrer PostgreSQL Version und der libpq abhängig. Schauen Sie im + PostgreSQL Manual, welche Kodierung Ihre Version unterstützt. </para> <note> <para> - This function requires PHP-4.0.2 or higher and PostgreSQL-7.0 or - higher. + Diese Funktion arbeitet ab PHP Versin 4.0.3 oder höher und + PostgreSQL 7.0 oder höher. Die unterstützten Kodierungen sind + von der PostgreSQL Version abhängig. Weitere Informationen + entnehmen Sie dem PostgreSQL Manual. </para> <para> - The function used to be called - <function>pg_setclientencoding</function>. + Diese Funktion ersetzt die Funktion <function>pg_setclientencoding</function>. </para> </note> <para> - See also <function>pg_client_encoding</function>. + Siehe auch <function>pg_client_encoding</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-client-encoding"> + + <refentry id='function.pg-client-encoding'> <refnamediv> <refname>pg_client_encoding</refname> <refpurpose> - Get the client encoding + Liefert die Kodierung des Clients </refpurpose> </refnamediv> <refsect1> - <title>Description</title> + <title>Beschreibung</title> <methodsynopsis> <type>string</type><methodname>pg_client_encoding</methodname> - <methodparam choice="opt"><type>int</type><parameter>connection</parameter></methodparam> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - The functions returns the client encoding as the string. The - returned string should be either : - SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW, UNICODE, - MULE_INTERNAL, LATINX (X=1...9), KOI8, WIN, ALT, - SJIS, BIG5, WIN1250. + <function>pg_client_encoding</function> gibt die Kodierung des + Clients als String zurück. Dieser String sollte einen der + folgenden Werte beinhalten: SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, + EUC_TW, UNICODE, MULE_INTERNAL, LATINX (X=1...9), KOI8, WIN, ALT, + SJIS, BIG5, WIN1250. </para> <note> <para> - This function requires PHP-4.0.2 or higher and PostgreSQL-7.0 or - higher. + Diese Funktion arbeitet ab PHP Versin 4.0.3 oder höher und + PostgreSQL 7.0 oder höher. Wenn die libpq ohne multibyte + encoding Unterstützung kompiliert wurde, gibt + <function>pg_set_client_encoding</function> immer + &quot;SQL_ASCII&quot; zurück. Die unterstützten Kodierungen + sind von der PostgreSQL Version abhängig. Weitere Informationen, + wie Sie multibyte Unterstützung aktivieren, und welche + Kodierungen unterstützt werden, entnehmen Sie dem PostgreSQL + Manual. </para> <para> - The function used to be called - <function>pg_clientencoding</function>. + Diese Funktion ersetzt die Funktion <function>pg_clientencoding</function>. </para> </note> <para> - See also <function>pg_set_client_encoding</function>. + Siehe auch <function>pg_set_client_encoding</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-trace"> + + <refentry id='function.pg-trace'> <refnamediv> <refname>pg_trace</refname> - <refpurpose>Trace a connection to PostgreSQL server</refpurpose> + <refpurpose> + Schaltet die Protokollierung der Verbindung ein + </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>bool</type><methodname>pg_trace</methodname> - <methodparam><type>string</type><parameter>filename</parameter></methodparam> - <methodparam choice="opt"><type>string</type><parameter>mode</parameter></methodparam> - <methodparam choice="opt"><type>int</type><parameter>connection</parameter></methodparam> + <methodparam><type>string</type><parameter>pathname</parameter></methodparam> + <methodparam choice='opt'><type>string</type><parameter>mode</parameter></methodparam> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - Enables tracing of the PostgreSQL frontend/backend communication - to a debugging file. To fully understand the results one needs to be - familiar with the internals of PostgreSQL communication protocol. - For those who are not, it can still be useful for tracing errors in - queries sent to the server, you could do for example - 'grep '^To backend' trace.log' and see what queriew actually were sent - to the PostgreSQL server. + <function>pg_trace</function> ermöglicht die Protokollierung der + frontend/backend Kommunikation in eine Debug-Datei, die durch den + Pfadnamen <parameter>pathname</parameter> bestimmt wurde. Um die + Ergebnisse ganz zu verstehen, sollte man sich mit den Interna des + PostgreSQL Kommunikationsprotokolls auskennen. Für dijenigen, + die sich damit nicht auskennen kann es trotzdem hilfreich sein, + um Fehler in Abfragen zu finden, die an den Server gesendet + wurden. Beispielsweise können Sie da Kommando + <command>grep '^To backend' trace.log</command> eingeben und + schauen, welche Abfrage gerade an den PostgreSQL Server geschickt + wurde. Weitere Informationen finden Siehe auch im PostgreSQL Manual. </para> <para> - <parameter>filename</parameter> and <parameter>mode</parameter> are the - same as in <function>fopen</function> (<parameter>mode</parameter> defaults - to 'w'), <parameter>connection</parameter> specifies the connection to - trace and defaults to the last one opened. + <parameter>Filename</parameter> und <parameter>mode</parameter> + sind dieselben, wie bei der Funktion <function>fopen</function> + (<parameter>mode</parameter> Standardwert ist 'w'), + <parameter>connection</parameter> bezeichnet die Verbindung, die + protokolliert werden soll. Standardmässig wird die zuletzt + geöffnete Verbindung protokolliert. </para> <para> - Returns &true; if <parameter>filename</parameter> could be opened for - logging, &false; otherwise. + Falls die Datei <parameter>pathname</parameter> zum + protokollieren geöffnet werden konne, wird &true; zurückgegeben, + anderenfalls &false;. </para> <para> - Siehe auch <function>fopen</function> and <function>pg_untrace</function>. + Siehe auch <function>fopen</function> und + <function>pg_untrace</function>. </para> </refsect1> </refentry> - <refentry id="function.pg-tty"> + + <refentry id='function.pg-tty'> <refnamediv> <refname>pg_tty</refname> - <refpurpose>Gibt den tty-Namen aus</refpurpose> + <refpurpose> + Gibt den tty-Namen zurück, der mit der Verbindung verknüpft ist. + </refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>string</type><methodname>pg_tty</methodname> - <methodparam><type>int</type><parameter>connection_id</parameter></methodparam> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - <function>pg_tty</function> gibt den tty-Namen aus, an den die - serverseitigen Debuggermeldungen der durch die Kennung - definierten Verbindung geschickt werden. + <function>pg_tty</function> gibt den tty-Namen zurück, an den die + serverseitigen Debug Meldungen für die gegebene + <parameter>connection</parameter> gesendet werden. </para> </refsect1> </refentry> - <refentry id="function.pg-untrace"> + + <refentry id='function.pg-untrace'> <refnamediv> <refname>pg_untrace</refname> - <refpurpose>Stop tracing a connection to PostgreSQL server</refpurpose> + <refpurpose> + Beendet die Protokollierung der Verbindung</refpurpose> </refnamediv> <refsect1> <title>Beschreibung</title> <methodsynopsis> <type>bool</type><methodname>pg_untrace</methodname> - <methodparam choice="opt"><type>int</type><parameter>connection</parameter></methodparam> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> </methodsynopsis> <para> - Stop tracing started by <function>pg_trace</function>. - <parameter>connection</parameter> specifies the connection that was - traced and defaults to the last one opened. + Beendet die Protokollierung der Verbindung die mit + <parameter>connection</parameter> begonnen wurde. Der Parameter + <parameter>connection</parameter> bezeichnet die Verbindung, die + protokolliert wurde und ist standardmässig auf die zuletzt + geöffnete Verbindung gesetzt. </para> <para> - Returns always &true;. + Die Funktion gibt immer &true; zurück. </para> <para> Siehe auch <function>pg_trace</function>. @@ -1325,10 +2045,368 @@ </refsect1> </refentry> + + <refentry id='function.pg-get-result'> + <refnamediv> + <refname>pg_get_result</refname> + <refpurpose> + Gibt asynchrone Abfrageergebnisse zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>resource</type><methodname>pg_get_result</methodname> + <methodparam choice='opt'><type>resource</type><parameter>connection</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_get_result</function> gibt die Ergebniskennung + einer asynchronen Abfrage zurück, die mit + <function>pg_send_query</function> an den Datenbankserver + gesendet wurde. Mit <function>pg_send_query</function> können + mehrere Abfragen an den Server geschickt werden, deren Ergebnisse + mit <function>pg_get_result</function> nacheinander abgefragt + werden können. Die Funktion gibt die Ergebniskennung zurück oder + &false;, falls keine Ergebnisse mehr gibt. + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-result-status'> + <refnamediv> + <refname>pg_result_status</refname> + <refpurpose> + Gibt den Status einer Ergebniskennung zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>int</type><methodname>pg_result_status</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_result_status</function> gibt den Status einer + Ergebniskennung zurück. Mögliche Rückgabewerte sind: + PGSQL_EMPTY_QUERY, PGSQL_COMMAND_OK, PGSQL_TUPLES_OK, + PGSQL_COPY_TO, PGSQL_COPY_FROM, PGSQL_BAD_RESPONSE, + PGSQL_NONFATAL_ERROR und PGSQL_FATAL_ERROR. + </para> + <para> + Siehe auch <function>pg_connection_status</function>. + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-send-query'> + <refnamediv> + <refname>pg_send_query</refname> + <refpurpose> + Sendet eine asynchrone Abfrage + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>bool</type><methodname>pg_send_query</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> + <methodparam><type>string</type><parameter>query</parameter></methodparam> + </methodsynopsis> + <methodsynopsis> + <type>bool</type><methodname>pg_send_query</methodname> + <methodparam><type>string</type><parameter>query</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_send_query</function> sendet eine asynchrone Abfrage + auf der Verbindung <parameter>connection</parameter>. Im + Unterschied zu <function>pg_query</function> können hier mehrere + Abfragen an den Server gesendet werden und die Ergebnisse + nacheinander mit <function>pg_get_result</function> geholt + werden. Die Ausführung eines Skripts wird während der Abarbeitung + der Anfragen nicht blockiert. Benutzen Sie die Funktion + <function>pg_connection_busy</function> um festzustellen, ob + die Verbindung gerade benutzt wird (z.B. ob gerade eine Abfrage + ausgeführt wird). Mit der Funktion + <function>pg_cancel_query</function> können Siehe auch die Abfrage + löschen. + </para> + <para> + Obwohl man mehrere Abfragen auf einmal an den Server senden kann, + können die Abfragen nicht über eine gerade benutzte Verbindung + geschickt werden. Falls die Abfragen gesendet werden, während die + Verbindung benutzt wird, wird abgewartet, bis die letzte Abfrage + fertig ist und alle Ergebnisse werden verworfen. + </para> + <para> + Siehe auch <function>pg_query</function>, + <function>pg_cancel_query</function>, + <function>pg_get_result</function> und + <function>pg_connection_busy</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-cancel-query'> + <refnamediv> + <refname>pg_cancel_query</refname> + <refpurpose> + Löscht eine asynchrone Abfrage + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>bool</type><methodname>pg_cancel_query</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_cancel_query</function> löscht eine asynchrone + Abfrage, die mit <function>pg_send_query</function> gesendet + wurde. Abfragen, die mit <function>pg_query</function> gesendet + wurden, können nicht gelöscht werden. + </para> + <para> + Siehe auch <function>pg_send_query</function>, + <function>pg_cancel_result</function> und + <function>pg_connection_busy</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-connection-busy'> + <refnamediv> + <refname>pg_connection_busy</refname> + <refpurpose> + Gibt den Status der Verbindung zurück (busy/not busy) + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>bool</type><methodname>pg_connection_busy</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_connection_busy</function> gibt &true; zurück, falls + die Verbindung gerade benutzt wird. Ist dies der Fall, wird die + zuvor an den Server gesendete Abfrage noch bearbeitet. Ein + Aufruf von <function>pg_get_result</function> wir dann blockiert. + </para> + <para> + Siehe auch <function>pg_connection_status</function> und + <function>pg_get_result</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-connection-reset'> + <refnamediv> + <refname>pg_connection_reset</refname> + <refpurpose> + Setzt die Verbindung zurück und verbindet neu + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>bool</type><methodname>pg_connection_reset</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_connection_reset</function> setzt die Verbindung + zurück und erstellt sie mit denselben Argumenten neu. Falls die + Verbindung erfolgreich neu aufgebaut werden konnte, wird &true; + zurückgegeben, &false; sonst. + </para> + <para> + Siehe auch <function>pg_connect</function>, + <function>pg_pconnect</function> und + <function>pg_connection_status</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-connection-status'> + <refnamediv> + <refname>pg_connection_status</refname> + <refpurpose> + Gibt den Verbindungsstatus zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>int</type><methodname>pg_connection_status</methodname> + <methodparam><type>resource</type><parameter>connection</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_connection_status</function> gibt den Status der + Verbindung zurück. Mögliche Werte sind: + <literal>PGSQL_CONNECTION_OK</literal> + oder <literal>PGSQL_CONNECTION_BAD</literal>. + </para> + <para> + Siehe auch <function>pg_connection_busy</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-copy-from'> + <refnamediv> + <refname>pg_copy_from</refname> + <refpurpose> + Kopiert ein Array in eine Tabelle + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>int</type><methodname>pg_copy_from</methodname> + <methodparam><type>int</type><parameter>connection</parameter></methodparam> + <methodparam><type>string</type><parameter>table_name</parameter></methodparam> + <methodparam><type>array</type><parameter>rows</parameter></methodparam> + <methodparam choice='opt'><type>string</type><parameter>delimiter</parameter></methodparam> + <methodparam choice='opt'><type>string</type><parameter>null_as</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_copy_from</function> kopiert ein Array in eine + Tabelle. Die Funktion gibt &true; zurück, wenn der Kopiervorgang + erfolgreich war, &false; sonst. + </para> + <para> + Siehe auch <function>pg_copy_to</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-copy-to'> + <refnamediv> + <refname>pg_copy_to</refname> + <refpurpose> + Kopiert eine Tabelle in ein Array + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>int</type><methodname>pg_copy_to</methodname> + <methodparam><type>int</type><parameter>connection</parameter></methodparam> + <methodparam><type>string</type><parameter>table_name</parameter></methodparam> + <methodparam choice='opt'><type>string</type><parameter>delimiter</parameter></methodparam> + <methodparam choice='opt'><type>string</type><parameter>null_as</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_copy_to</function> kopiert eine Tabelle in ein + Array. Die Funktion gibt das Array als Ergebnis zurück, falls die + Aktion erfolgreich war, anderenfalls &false;. + </para> + <para> + Siehe auch <function>pg_copy_from</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-escape-bytea'> + <refnamediv> + <refname>pg_escape_bytea</refname> + <refpurpose> + Maskiert Binärdaten für den Typ bytea</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>string</type><methodname>pg_escape_bytea</methodname> + <methodparam><type>string</type><parameter>data</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_escape_string</function> maskiert Binärdaten so, + dass sie als bytea-Stream in eine Tabelle eingefügt werden können. + Der Rückgabewert ist der maskierte String. + </para> + <note> + <para> + Diese Funktion setzt PostgreSQL 7.2 oder höher voraus. + </para> + </note> + <para> + Siehe auch <function>pg_escape_string</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-escape-string'> + <refnamediv> + <refname>pg_escape_string</refname> + <refpurpose> + Maskiert einen String für die text/char Datentypen + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>string</type><methodname>pg_escape_string</methodname> + <methodparam><type>string</type><parameter>data</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_escape_string</function> Maskiert einen String für + die text/char Datentypen. Der Rückgabewert ist der maskierte String. + </para> + <note> + <para> + Diese Funktion setzt PostgreSQL 7.2 oder höher voraus. + </para> + </note> + <para> + Siehe auch <function>pg_escape_bytea</function> + </para> + </refsect1> + </refentry> + + + <refentry id='function.pg-result-error'> + <refnamediv> + <refname>pg_result_error</refname> + <refpurpose> + Gibt eine Fehlermeldung zu einer Ergebniskennung zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <methodsynopsis> + <type>string</type><methodname>pg_result_error</methodname> + <methodparam><type>resource</type><parameter>result</parameter></methodparam> + </methodsynopsis> + <para> + <function>pg_result_error</function> gibt die mit der + Ergebniskennung <parameter>result</parameter> verknüpfte + Fehlermeldung zurück. So kann der Benutzer qualifiziertere + Fehlermeldungen zu erhalten als mit der Funktion + <function>pg_last_error</function>. + </para> + <para> + Siehe auch <function>pg_query</function>, + <function>pg_send_query</function>, + <function>pg_get_result</function>, + <function>pg_last_error</function> and + <function>pg_last_notice</function> + </para> + </refsect1> + </refentry> + </reference> <!-- Keep this comment at the end of the file -Local variables: +Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t @@ -1343,5 +2421,7 @@ 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 +--> \ No newline at end of file
« previous php.doc (#969344270) next »