[Trad] [svn:pgfr] r1312 - in traduc/trunk/postgresql: . ref

admin at listes.postgresql.fr admin at listes.postgresql.fr
Mar 28 Avr 23:40:44 CEST 2009


Author: gleu
Date: 2009-04-28 23:40:43 +0200 (Tue, 28 Apr 2009)
New Revision: 1312

Modified:
   traduc/trunk/postgresql/installation.xml
   traduc/trunk/postgresql/libpq.xml
   traduc/trunk/postgresql/plpgsql.xml
   traduc/trunk/postgresql/ref/create_foreign_data_wrapper.xml
   traduc/trunk/postgresql/runtime.xml
   traduc/trunk/postgresql/spi.xml
   traduc/trunk/postgresql/syntax.xml
   traduc/trunk/postgresql/trigger.xml
   traduc/trunk/postgresql/typeconv.xml
   traduc/trunk/postgresql/wal.xml
   traduc/trunk/postgresql/xfunc.xml
   traduc/trunk/postgresql/xindex.xml
Log:
Suite de la traduction 8.4 (avec un fichier par Florence).


Modified: traduc/trunk/postgresql/installation.xml
===================================================================
--- traduc/trunk/postgresql/installation.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/installation.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -6,7 +6,7 @@
 
 <chapter id="installation">
  <title>Procédure d'installation <phrase>de
-   <productname>PostgreSQL</productname></phrase> from Source Code</title>
+   <productname>PostgreSQL</productname></phrase> du code source</title>
 
  <indexterm zone="installation">
   <primary>installation</primary>
@@ -1310,8 +1310,8 @@
          </indexterm>
          Compile <productname>PostgreSQL</productname> avec le support de l'outil
 	 de trace dynamique, DTrace.
-         <phrase>See <xref linkend="dynamic-trace"/>
-         for more information.</phrase>
+         <phrase>Voir <xref linkend="dynamic-trace"/>
+         pour plus d'informations.</phrase>
         </para>
 
         <para>
@@ -1326,7 +1326,7 @@
          Des options supplémentaires en ligne de commande
 	 peuvent être indiquées dans la variable d'environnement
 	 <envar>DTRACEFLAGS</envar> pour le programme <command>dtrace</command>.
-         On Solaris, pour inclure le support de DTrace dans un exécutable 64-bit, ajoutez
+         Sur Solaris, pour inclure le support de DTrace dans un exécutable 64-bit, ajoutez
          l'option <literal>DTRACEFLAGS="-64"</literal> pour configure. Par
          exemple, en utilisant le compilateur GCC&nbsp;:
 <screen>./configure CC='gcc -m64' --enable-dtrace DTRACEFLAGS='-64' ...
@@ -1369,7 +1369,7 @@
        <term><envar>BISON</envar></term>
        <listitem>
         <para>
-         Bison program
+         programme Bison
         </para>
        </listitem>
       </varlistentry>
@@ -1432,7 +1432,7 @@
        <term><envar>FLEX</envar></term>
        <listitem>
         <para>
-         Flex program
+         programme Flex
         </para>
        </listitem>
       </varlistentry>
@@ -1490,8 +1490,8 @@
        <listitem>
         <para>
          chemin complet vers l'interpréteur Tcl. Il sera utilisé pour déterminer
-         les dépendances pour la construction de PL/Tcl, and it will
-         be substituted into Tcl scripts.
+         les dépendances pour la construction de PL/Tcl, et il sera substitué 
+	 dans des scripts Tcl.
         </para>
        </listitem>
       </varlistentry>

Modified: traduc/trunk/postgresql/libpq.xml
===================================================================
--- traduc/trunk/postgresql/libpq.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/libpq.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -1059,8 +1059,8 @@
 <literal>integer_datetimes</literal> n'étaient pas rapportés dans les versions
 antérieures à la 8.0&nbsp;;
 <literal>standard_conforming_strings</literal> n'était pas rapporté dans les versions
-antérieures à la 8.1; <literal>IntervalStyle</literal> was not reported by releases
-       before 8.4).
+antérieures à la 8.1; <literal>IntervalStyle</literal> n'était pas rapporté dans les versions
+antérieures à la 8.4).
 Notez que
 <literal>server_version</literal>,
 <literal>server_encoding</literal> et
@@ -1153,8 +1153,8 @@
        Pratiquement toutes les fonctions <application>libpq</application> initialiseront
        un message pour <function>PQerrorMessage</function> en cas d'échec.
        Notez que, par la convention <application>libpq</application>, un résultat
-       non vide de <function>PQerrorMessage</function> inclura can be multiple lines,
-       and un retour
+       non vide de <function>PQerrorMessage</function> peut être sur plusieurs lignes
+       et contiendra un retour
        chariot à la fin. L'appelant ne devrait pas libérer directement le
        résultat. Il sera libéré quand la poignée <structname>PGconn</structname> associée
        est passée à <function>PQfinish</function>. Vous ne devriez pas supposer
@@ -5087,8 +5087,8 @@
 <indexterm>
  <primary><envar>PGHOST</envar></primary>
 </indexterm>
-<envar>PGHOST</envar>  behaves the same as <xref
-      linkend="libpq-connect-host"/> connection parameter.
+<envar>PGHOST</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-host"/>.
 </para>
 </listitem>
 <listitem>
@@ -5096,8 +5096,8 @@
 <indexterm>
  <primary><envar>PGHOSTADDR</envar></primary>
 </indexterm>
-<envar>PGHOSTADDR</envar> behaves the same as <xref
-linkend="libpq-connect-hostaddr"/> connection parameter.
+<envar>PGHOSTADDR</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-hostaddr"/>.
 Elle peut être initialisée avec <envar>PGHOST</envar> pour éviter
 la surcharge des recherches DNS.
 </para>
@@ -5107,8 +5107,8 @@
 <indexterm>
  <primary><envar>PGPORT</envar></primary>
 </indexterm>
-<envar>PGPORT</envar> behaves the same as <xref
-      linkend="libpq-connect-port"/> connection parameter.
+<envar>PGPORT</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-port"/>.
 </para>
 </listitem>
 <listitem>
@@ -5116,8 +5116,8 @@
 <indexterm>
  <primary><envar>PGDATABASE</envar></primary>
 </indexterm>
-<envar>PGDATABASE</envar> behaves the same as <xref
-      linkend="libpq-connect-dbname"/> connection parameter.
+<envar>PGDATABASE</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-dbname"/>.
       </para>
 </listitem>
 <listitem>
@@ -5125,9 +5125,8 @@
 <indexterm>
  <primary><envar>PGUSER</envar></primary>
 </indexterm>
-<envar>PGUSER</envar> behaves the same as <xref
-      linkend="libpq-connect-user"/> connection parameter.
-      database.
+<envar>PGUSER</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-user"/>.
 </para>
 </listitem>
 <listitem>
@@ -5135,8 +5134,8 @@
 <indexterm>
  <primary><envar>PGPASSWORD</envar></primary>
 </indexterm>
-<envar>PGPASSWORD</envar> behaves the same as <xref
-      linkend="libpq-connect-password"/> connection parameter. L'utilisation de cette variable
+<envar>PGPASSWORD</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-password"/>. L'utilisation de cette variable
 d'environnement n'est pas recommandée pour des raisons de sécurité (certains
 systèmes d'exploitation autorisent les utilisateurs autres que root à voir les
 variables d'environnement du processus via <application>ps</application>)&nbsp;; à la
@@ -5160,8 +5159,8 @@
 <indexterm>
  <primary><envar>PGSERVICE</envar></primary>
 </indexterm>
-<envar>PGSERVICE</envar> behaves the same as <xref
-      linkend="libpq-connect-service"/> connection parameter.
+<envar>PGSERVICE</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-service"/>.
 </para>
 </listitem>
 <listitem>
@@ -5184,8 +5183,8 @@
 <indexterm>
  <primary><envar>PGOPTIONS</envar></primary>
 </indexterm>
-<envar>PGOPTIONS</envar> behaves the same as <xref
-      linkend="libpq-connect-options"/> connection parameter.
+<envar>PGOPTIONS</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-options"/>.
 </para>
 </listitem>
 <listitem>
@@ -5193,8 +5192,8 @@
 <indexterm>
  <primary><envar>PGSSLMODE</envar></primary>
 </indexterm>
-<envar>PGSSLMODE</envar> behaves the same as <xref
-      linkend="libpq-connect-sslmode"/> connection parameter.
+<envar>PGSSLMODE</envar> se comporte de la même façon que le paramètre de
+configuration <xref linkend="libpq-connect-sslmode"/>.
 </para>
 </listitem>
     <listitem>
@@ -5202,8 +5201,8 @@
       <indexterm>
        <primary><envar>PGSSLVERIFY</envar></primary>
       </indexterm>
-      <envar>PGSSLVERIFY</envar> behaves the same as <xref
-      linkend="libpq-connect-sslverify"/> connection parameter.
+      <envar>PGSSLVERIFY</envar> se comporte de la même façon que le paramètre
+      de configuration <xref linkend="libpq-connect-sslverify"/>.
      </para>
     </listitem>
 
@@ -5212,8 +5211,8 @@
       <indexterm>
        <primary><envar>PGREQUIRESSL</envar></primary>
       </indexterm>
-      <envar>PGREQUIRESSL</envar> behaves the same as <xref
-      linkend="libpq-connect-requiressl"/> connection parameter.
+      <envar>PGREQUIRESSL</envar> se comporte de la même façon que le paramètre
+      de configuration <xref linkend="libpq-connect-requiressl"/>.
      </para>
     </listitem>
     <listitem>
@@ -5235,8 +5234,8 @@
       <indexterm>
        <primary><envar>PGSSLCERT</envar></primary>
       </indexterm>
-      <envar>PGSSLCERT</envar> behaves the same as <xref
-      linkend="libpq-connect-sslcert"/> connection parameter.
+      <envar>PGSSLCERT</envar> se comporte de la même façon que le paramètre de
+      configuration <xref linkend="libpq-connect-sslcert"/>.
      </para>
     </listitem>
 
@@ -5245,8 +5244,8 @@
       <indexterm>
        <primary><envar>PGSSLKEY</envar></primary>
       </indexterm>
-      <envar>PGSSLKEY</envar> behaves the same as <xref
-      linkend="libpq-connect-sslkey"/> connection parameter.
+      <envar>PGSSLKEY</envar> se comporte de la même façon que le paramètre de
+      configuration <xref linkend="libpq-connect-sslkey"/>.
      </para>
     </listitem>
     <listitem>
@@ -5254,8 +5253,8 @@
       <indexterm>
        <primary><envar>PGSSLROOTCERT</envar></primary>
       </indexterm>
-      <envar>PGSSLROOTCERT</envar>  behaves the same as <xref
-      linkend="libpq-connect-sslrootcert"/> connection parameter.
+      <envar>PGSSLROOTCERT</envar> se comporte de la même façon que le paramètre
+      de configuration <xref linkend="libpq-connect-sslrootcert"/>.
      </para>
     </listitem>
 
@@ -5264,8 +5263,8 @@
       <indexterm>
        <primary><envar>PGSSLCRL</envar></primary>
       </indexterm>
-      <envar>PGSSLCRL</envar>  behaves the same as <xref
-      linkend="libpq-connect-sslcrl"/> connection parameter.
+      <envar>PGSSLCRL</envar> se comporte de la même façon que le paramètre de
+      configuration <xref linkend="libpq-connect-sslcrl"/>.
      </para>
     </listitem>
 
@@ -5274,8 +5273,8 @@
       <indexterm>
        <primary><envar>PGKRBSRVNAME</envar></primary>
       </indexterm>
-      <envar>PGKRBSRVNAME</envar>  behaves the same as <xref
-      linkend="libpq-connect-krbsrvname"/> connection parameter.
+      <envar>PGKRBSRVNAME</envar> se comporte de la même façon que le paramètre
+      de configuration <xref linkend="libpq-connect-krbsrvname"/>.
      </para>
     </listitem>
 
@@ -5284,8 +5283,8 @@
       <indexterm>
        <primary><envar>PGGSSLIB</envar></primary>
       </indexterm>
-      <envar>PGGSSLIB</envar> behaves the same as <xref
-      linkend="libpq-connect-gsslib"/> connection parameter.
+      <envar>PGGSSLIB</envar> se comporte de la même façon que le paramètre de
+      configuration <xref linkend="libpq-connect-gsslib"/>.
      </para>
     </listitem>
 
@@ -5294,8 +5293,8 @@
       <indexterm>
        <primary><envar>PGCONNECT_TIMEOUT</envar></primary>
       </indexterm>
-      <envar>PGCONNECT_TIMEOUT</envar>  behaves the same as <xref
-      linkend="libpq-connect-connect-timeout"/> connection parameter.
+      <envar>PGCONNECT_TIMEOUT</envar> se comporte de la même façon que le
+      paramètre de configuration <xref linkend="libpq-connect-connect-timeout"/>.
      </para>
     </listitem>
 </itemizedlist>

Modified: traduc/trunk/postgresql/plpgsql.xml
===================================================================
--- traduc/trunk/postgresql/plpgsql.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/plpgsql.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -1023,7 +1023,7 @@
 
      où <replaceable>chaîne-commande</replaceable> est une expression manipulant
      une chaîne (de type <type>text</type>) contenant la commande à exécuter.
-     The optional <replaceable>cible</replaceable> est une variable record ou ligne ou
+     La <replaceable>cible</replaceable> optionnelle est une variable record ou ligne ou
      même une liste de variables simples ou de champs de lignes/enregistrements
      séparées par des virgules, into which the results of
      the command will be stored.  The optional <literal>USING</literal> expressions
@@ -1173,11 +1173,12 @@
 
     <para>
      Cet exemple démontre l'utilisation des fonctions
-     <function>quote_ident</function> et <function>quote_literal</function> (see <xref
+     <function>quote_ident</function> et <function>quote_literal</function> (voir <xref
      linkend="functions-string"/>).
      Pour plus de sûreté, les expressions contenant
      les identifiants des colonnes et des tables doivent être passées à la
-     fonction <function>quote_ident</function> before insertion in a dynamic query. Les expressions contenant des
+     fonction <function>quote_ident</function> avant l'insertion dans une requête
+     dynamique. Les expressions contenant des
      valeurs de type chaîne de caractères doivent être
      passées à <function>quote_literal</function>. Ce sont les étapes
      appropriées pour renvoyer le texte en entrée entouré par des guillemets 
@@ -1237,12 +1238,13 @@
     || nouvelle_valeur
     || '$$ WHERE cle = '
     || quote_literal(valeur_cle);</programlisting>
-     car cela casserait si le contenu de <literal>newvalue</literal> pouvait contenir
+     car cela casserait si le contenu de <literal>nouvelle_valeur</literal> pouvait contenir
      <literal>$$</literal>. La même objection s'applique à tout délimiteur dollar
      que vous pourriez choisir. Donc, pour mettre un texte inconnu entre
      guillemets de façon sûr, vous <emphasis>devez</emphasis> utiliser
      <function>quote_literal</function>,
-     <function>quote_nullable</function>, or <function>quote_ident</function>, as appropriate.
+     <function>quote_nullable</function> ou <function>quote_ident</function>,
+     comme approprié.
     </para>
    </example>
 
@@ -2779,6 +2781,7 @@
        </para>
      </sect3>
    </sect2>
+   
    <sect2 id="plpgsql-cursor-for-loop">
     <title>Looping Through a Cursor's Result</title>
 
@@ -2986,7 +2989,7 @@
        de base de données pour les opérations <command>INSERT</command>/<command>UPDATE</command> 
        dans les triggers de niveau ligne. Cette variable est
        <symbol>NULL</symbol> dans un trigger de niveau instruction
-       and for <command>DELETE</command> operations.
+       et pour les opérations <command>DELETE</command>.
       </para>
      </listitem>
     </varlistentry>
@@ -2998,7 +3001,8 @@
        Type de données <type>RECORD</type>&nbsp;; variable contenant l'ancienne ligne de 
        base de données pour les opérations <command>UPDATE</command>/<command>DELETE</command> 
        dans les triggers de niveau ligne. Cette variable est <symbol>NULL</symbol>
-       dans les triggers de niveau instruction and for <command>INSERT</command> operations.
+       dans les triggers de niveau instruction et pour les opérations
+       <command>INSERT</command>.
       </para>
      </listitem>
     </varlistentry>

Modified: traduc/trunk/postgresql/ref/create_foreign_data_wrapper.xml
===================================================================
--- traduc/trunk/postgresql/ref/create_foreign_data_wrapper.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/ref/create_foreign_data_wrapper.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -1,18 +1,19 @@
 <?xml version="1.0" encoding="ISO-8859-15"?>
-<!-- Dernière modification
+<!-- Dernière modification
      le       $Date: 2009-04-13 17:20:17 +0200 (lun 13 avr 2009) $
      par      $Author: gleu $
-     révision $Revision: 1293 $ -->
+     révision $Revision: 1293 $ -->
 
 <refentry id="sql-createforeigndatawrapper">
  <refmeta>
   <refentrytitle id="sql-createforeigndatawrapper-title">CREATE FOREIGN DATA WRAPPER</refentrytitle>
-  <refmiscinfo>SQL - Language Statements</refmiscinfo>
+  <refmiscinfo>SQL - Instructions du langage</refmiscinfo>
  </refmeta>
 
  <refnamediv>
   <refname>CREATE FOREIGN DATA WRAPPER</refname>
-  <refpurpose>define a new foreign-data wrapper</refpurpose>
+  <refpurpose>définit un nouveau wrapper de données
+      distantes</refpurpose>
  </refnamediv>
 
  <indexterm zone="sql-createforeigndatawrapper">
@@ -21,9 +22,9 @@
 
  <refsynopsisdiv>
 <synopsis>
-CREATE FOREIGN DATA WRAPPER <replaceable class="parameter">name</replaceable>
-    [ VALIDATOR <replaceable class="parameter">valfunction</replaceable> | NO VALIDATOR ]
-    [ OPTIONS ( <replaceable class="PARAMETER">option</replaceable> '<replaceable class="PARAMETER">value</replaceable>' [, ... ] ) ]
+CREATE FOREIGN DATA WRAPPER <replaceable class="parameter">nom</replaceable>
+    [ VALIDATOR <replaceable class="parameter">fonction_validation</replaceable> | NO VALIDATOR ]
+    [ OPTIONS ( <replaceable class="PARAMETER">option</replaceable> '<replaceable class="PARAMETER">valeur</replaceable>' [, ... ] ) ]
 </synopsis>
  </refsynopsisdiv>
 
@@ -31,65 +32,68 @@
   <title>Description</title>
 
   <para>
-   <command>CREATE FOREIGN DATA WRAPPER</command> creates a new
-   foreign-data wrapper.  The user who defines a foreign-data wrapper
-   becomes its owner.
+   <command>CREATE FOREIGN DATA WRAPPER</command> crée un nouveau wrapper de
+   données distantes. L'utilisateur qui définit un wrapper de données distantes
+   devient son propriétaire.
   </para>
 
   <para>
-   The foreign-data wrapper name must be unique within the database.
+   Le nom du wrapper de données distantes doit être unique dans la base de
+   données.
   </para>
 
   <para>
-   Only superusers can create foreign-data wrappers.
+   Seuls les super-utilisateurs peuvent créer des wrappers de données distantes.
   </para>
  </refsect1>
 
  <refsect1>
-  <title>Parameters</title>
+  <title>Paramètres</title>
 
   <variablelist>
    <varlistentry>
-    <term><replaceable class="parameter">name</replaceable></term>
+    <term><replaceable class="parameter">nom</replaceable></term>
     <listitem>
      <para>
-      The name of the foreign-data wrapper to be created.
+      Le nom du wrapper de données distantes à créer.
      </para>
     </listitem>
    </varlistentry>
 
    <varlistentry>
-    <term><literal>VALIDATOR <replaceable class="parameter">valfunction</replaceable></literal></term>
+    <term><literal>VALIDATOR <replaceable class="parameter">fonction_validation</replaceable></literal></term>
     <listitem>
      <para>
-      <replaceable class="parameter">valfunction</replaceable> is the
-      name of a previously registered function that will be called to
-      check the generic options given to the foreign-data wrapper, as
-      well as to foreign servers and user mappings using the
-      foreign-data wrapper.  If no validator function or <literal>NO
-      VALIDATOR</literal> is specified, then options will not be
-      checked at creation time.  (Foreign-data wrappers will possibly
-      ignore or reject invalid option specifications at run time,
-      depending on the implementation.)  The validator function must
-      take two arguments: one of type <type>text[]</type>, which will
-      contain the array of options as stored in the system catalogs,
-      and one of type <type>oid</type>, which will be the OID of the
-      system catalog containing the options, or zero if the context is
-      not known.  The return type is ignored; the function should
-      indicate invalid options using
-      the <function>ereport()</function> function.
+      <replaceable class="parameter">fonction_validation</replaceable> est le
+      nom d'une fonction déjà enregistrée qui sera appelée pour vérifier les
+      options génériques passées au wrapper de données distantes, au serveur
+      distant et aux correspondances d'utilisateurs (<foreignphrase>user
+      mappings</foreignphrase>) utilisant le wrapper de données distantes.
+      Si aucune fonction de validation n'est spécifiée ou si <literal>NO
+      VALIDATOR</literal> est spécifié, alors les options ne seront pas
+      vérifiées au moment de la création. (Il est possible que les wrappers
+      de données distantes ignorent ou rejettent des spécifications d'options
+      invalides à l'exécution, en fonction de l'implémentation) La fonction de
+      validation doit prendre deux arguments&nbsp;: l'un du type
+      <type>text[]</type>, qui contiendra le tableau d'options, tel qu'il est
+      stocké dans les catalogues systèmes, et l'autre de type <type>oid</type>,
+      qui sera l'OID du catalogue système contenant les options, ou zéro si le
+      contexte est inconnu. Le type de retour est inconnu&nbsp;; la fonction
+      devrait indiquer les options invalides grâce à la fonction
+      <function>ereport()</function>.
      </para>
     </listitem>
    </varlistentry>
 
    <varlistentry>
-    <term><literal>OPTIONS ( <replaceable class="PARAMETER">option</replaceable> '<replaceable class="PARAMETER">value</replaceable>' [, ... ] )</literal></term>
+    <term><literal>OPTIONS ( <replaceable class="PARAMETER">option</replaceable> '<replaceable class="PARAMETER">valeur</replaceable>' [, ... ] )</literal></term>
     <listitem>
      <para>
-      This clause specifies options for the new foreign-data wrapper.
-      The allowed option names and values are specific to each foreign
-      data wrapper and are validated using the foreign-data wrapper
-      library.  Option names must be unique.
+      Cette clause spécifie les options pour le nouveau wrapper de données
+      distantes. Les noms et valeurs d'options autorisés sont spécifiques à
+      chaque wrapper de données distantes. Ils sont validés par la
+      bibliothèque du wrapper de données distantes. Les noms d'options doivent
+      être uniques.
      </para>
     </listitem>
    </varlistentry>
@@ -100,70 +104,70 @@
   <title>Notes</title>
 
   <para>
-   At the moment, the foreign-data wrapper functionality is very
-   rudimentary.  The purpose of foreign-data wrappers, foreign
-   servers, and user mappings is to store this information in a
-   standard way so that it can be queried by interested applications.
-   The functionality to actually query external data does not exist
-   yet.
+   Pour le moment, la fonctionnalité de wrapper de données distantes est très
+   rudimentaire. Le but des wrappers de données distantes, des serveurs
+   distants et des correspondances d'utilisateurs est de stocker cette
+   information de manière standard, afin qu'elle puisse être interrogée par
+   les applications intéressées. La fonctionnalité d'interroger réellement des
+   données distantes n'existe pas encore.
   </para>
 
   <para>
-   There is currently one foreign-data wrapper validator function
-   provided:
-   <filename>postgresql_fdw_validator</filename>, which accepts
-   options corresponding to <application>libpq</application> connection
-   parameters.
+   Actuellement, une fonction de validation de wrapper de données distantes est
+   disponible&nbsp;: <filename>postgresql_fdw_validator</filename>, qui accepte
+   les options correspondant aux paramètres de connexion de
+   <application>libpq</application>.
   </para>
  </refsect1>
 
  <refsect1>
-  <title>Examples</title>
+  <title>Exemples</title>
 
   <para>
-   Create a foreign-data wrapper <literal>dummy</literal>:
+   Créer un wrapper de données distantes <literal>bidon</literal>&nbsp;:
 <programlisting>
-CREATE FOREIGN DATA WRAPPER dummy;
+CREATE FOREIGN DATA WRAPPER bidon;
 </programlisting>
   </para>
 
   <para>
-   Create a foreign-data wrapper <literal>postgresql</literal> with
-   validator function <literal>postgresql_fdw_validator</literal>:
+   Créer un wrapper de données distantes <literal>postgresql</literal> avec
+   la fonction de validation
+   <literal>postgresql_fdw_validator</literal>&nbsp;:
 <programlisting>
 CREATE FOREIGN DATA WRAPPER postgresql VALIDATOR postgresql_fdw_validator;
 </programlisting>
   </para>
 
   <para>
-   Create a foreign-data wrapper <literal>mywrapper</literal> with some
-   options:
+   Créer un wrapper de données distantes <literal>monwrapper</literal> avec des
+   options&nbsp;:
 <programlisting>
-CREATE FOREIGN DATA WRAPPER mywrapper
+CREATE FOREIGN DATA WRAPPER monwrapper
     OPTIONS (debug 'true');
 </programlisting>
   </para>
  </refsect1>
 
  <refsect1>
-  <title>Compatibility</title>
+  <title>Compatibilité</title>
 
   <para>
-   <command>CREATE FOREIGN DATA WRAPPER</command> conforms to ISO/IEC
-   9075-9 (SQL/MED), with the exception that
-   the <literal>VALIDATOR</literal> clause is an extension and the
-   clauses <literal>LIBRARY</literal> and <literal>LANGUAGE</literal>
-   are not yet implemented in PostgreSQL.
+   <command>CREATE FOREIGN DATA WRAPPER</command> est conforme à la norme
+   ISO/IEC 9075-9 (SQL/MED), à l'exception de la clause
+   <literal>VALIDATOR</literal> qui est une extension, et des clauses
+   <literal>LIBRARY</literal> et <literal>LANGUAGE</literal> qui ne sont pas
+   encore implémentées dans PostgreSQL.
   </para>
 
   <para>
-   Note, however, that the SQL/MED functionality as a whole is not yet
-   conforming.
+   Notez, cependant, que la fonctionnalité SQL/MED n'est pas encore conforme
+   dans son ensemble.
   </para>
  </refsect1>
 
  <refsect1>
-  <title>See Also</title>
+  <title>Voir aussi</title>
 
   <simplelist type="inline">
    <member><xref linkend="sql-alterforeigndatawrapper" endterm="sql-alterforeigndatawrapper-title"/></member>

Modified: traduc/trunk/postgresql/runtime.xml
===================================================================
--- traduc/trunk/postgresql/runtime.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/runtime.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -5,7 +5,7 @@
      révision $Revision$ -->
 
 <chapter id="runtime">
- <title>Server Setup and Operation</title>
+ <title>Configuration du serveur et mise en place</title>
 
  <para>
   Ce chapitre discute de la configuration, du lancement du serveur de bases de
@@ -150,14 +150,14 @@
    l'environnement et l'applique à la base de données initialisée. Il est
    possible de spécifier une locale différente pour la base de données&nbsp;;
    la <xref linkend="locale"/> propose plus d'informations là-dessus.
-   The default sort order used
-   within the particular database cluster is set by
-   <command>initdb</command>, and while you can create new databases using
-   different sort order, the order used in the template databases that initdb
-   creates cannot be changed without dropping and recreating them.
-   There is also a performance impact for using locales autres que
-   <literal>c</literal> ou <literal>posix</literal>. Du coup, il est important de faire ce
-   choix correctement la première fois.
+   L'ordre de tri utilisé par défaut pour ce cluster de bases de données est
+   initialisé par <command>initdb</command> et, bien que vous pouvez créer de
+   nouvelles bases de données en utilisant des ordres de tris différents, l'ordre
+   utilisé dans les bases de données modèle que initdb a créé ne peut pas être
+   modifié sans les supprimer et les re-créer. Cela a aussi un impact sur les
+   performances pour l'utilisation de locales autres que <literal>c</literal>
+   ou <literal>posix</literal>. Du coup, il est important de faire ce choix
+   correctement la première fois.
   </para>
 
   <para>
@@ -194,10 +194,10 @@
     En particulier, des écritures asynchrones (décalées dans le temps) sur le
     serveur <acronym>NFS</acronym> peuvent poser des soucis de fiabilité. Si
     possible, montez les systèmes de fichiers <acronym>NFS</acronym> en
-    synchrone (autrement dit sans cache) pour éviter cela. Also, soft-mounting
-    <acronym>NFS</acronym> is not recommended. Les
-    <acronym>SAN</acronym> utilisent un protocole de communication bas-niveau
-    plutôt que <acronym>NFS</acronym>.
+    synchrone (autrement dit sans cache) pour éviter cela. De même, le montage
+    <acronym>NFS</acronym> n'est pas recommandé. Les <acronym>SAN</acronym>
+    utilisent un protocole de communication bas-niveau plutôt que
+    <acronym>NFS</acronym>.
    </para>
 
   </sect2>
@@ -1058,7 +1058,7 @@
     </variablelist>
 
    <table id="shared-memory-parameters">
-    <title><productname>PostgreSQL</productname> shared memory usage</title>
+    <title>Usage de la mémoire partagée <productname>PostgreSQL</productname></title>
 
     <tgroup cols="2">
      <colspec colnum="1" colwidth="0.5*"/>
@@ -1066,43 +1066,43 @@
      <thead>
       <row>
        <entry>Usage</entry>
-       <entry>Approximate shared memory bytes required (as of 8.3)</entry>
+       <entry>Nombre d'octets approximatifs pour la mémoire partagée (en 8.3)</entry>
       </row>
      </thead>
 
      <tbody>
       <row>
-       <entry>Connections</entry>
+       <entry>Connexions</entry>
        <entry>(1800 + 270 * <xref
        linkend="guc-max-locks-per-transaction"/>) * <xref
        linkend="guc-max-connections"/></entry>
       </row>
 
       <row>
-       <entry>Autovacuum workers</entry>
+       <entry>Processus travailleurs de l'autovacuum</entry>
        <entry>(1800 + 270 * <xref
        linkend="guc-max-locks-per-transaction"/>) * <xref
        linkend="guc-autovacuum-max-workers"/></entry>
       </row>
 
       <row>
-       <entry>Prepared transactions</entry>
+       <entry>Transactions préparées</entry>
        <entry>(770 + 270 * <xref
        linkend="guc-max-locks-per-transaction"/>) * <xref linkend="guc-max-prepared-transactions"/></entry>
       </row>
 
       <row>
-       <entry>Shared disk buffers</entry>
+       <entry>Tampons disque partagés</entry>
        <entry>(<xref linkend="guc-block-size"/> + 208) * <xref linkend="guc-shared-buffers"/></entry>
       </row>
 
       <row>
-       <entry>WAL buffers</entry>
+       <entry>Tampons WAL</entry>
        <entry>(<xref linkend="guc-wal-block-size"/> + 8) * <xref linkend="guc-wal-buffers"/></entry>
       </row>
 
       <row>
-       <entry>Fixed space requirements</entry>
+       <entry>Espace fixe requis</entry>
        <entry>770 kB</entry>
       </row>
      </tbody>
@@ -1277,17 +1277,18 @@
      <term><systemitem>sigterm</systemitem><indexterm><primary>sigterm</primary></indexterm></term>
      <listitem>
       <para>
-       This is the <firstterm>Smart Shutdown</firstterm> mode.
+       C'est le mode d'<firstterm>arrêt intelligent</firstterm>.
        Après réception de <systemitem>sigterm</systemitem>, le serveur
        désactive les nouvelles connexions mais permet aux sessions en cours de
        terminer leur travail normalement. Il s'arrête seulement après que toutes
        les sessions se sont terminées normalement. C'est l'arrêt intelligent
        (<firstterm>smart shutdown</firstterm>).
-       If the server is in online backup mode, it additionally waits
-       until online backup mode is no longer active.  While backup mode is
-       active, new connections will still be allowed, but only to superusers
-       (this exception allows a superuser to connect to terminate
-       online backup mode).
+       Si le serveur est en mode de sauvegarde en ligne, il attends en plus la
+       désactivation du mot de sauvegarde en ligne. Lorsque le mode de sauvegarde
+       est actif, les nouvelles connexions sont toujours autorisées, mais
+       seulement pour les superutilisateurs (cette exception permet à un
+       superutilisateur de se connecter pour terminer le mode de sauvegarde en
+       ligne).
       </para>
      </listitem>
     </varlistentry>
@@ -1296,13 +1297,13 @@
      <term><systemitem>sigint</systemitem><indexterm><primary>sigint</primary></indexterm></term>
      <listitem>
       <para>
-       This is the <firstterm>Fast Shutdown</firstterm> mode.
+       C'est le mode d'<firstterm>arrêt rapide</firstterm>.
        Le serveur désactive les nouvelles connexions et envoie à tous
        les processus serveur le signal <systemitem>sigterm</systemitem>, qui les
        fera annuler leurs transactions courantes pour quitter rapidement. Il
        attend ensuite la fin des processus serveur et s'arrête finalement.
-       If the server is in online backup mode, backup mode will be
-       terminated, rendering the backup useless.
+       Si le serveur est en mode de sauvegarde en ligne, le mode est annulé,
+       rendant la sauvegarde inutilisable.
       </para>
      </listitem>
     </varlistentry>
@@ -1311,7 +1312,7 @@
      <term><systemitem>sigquit</systemitem><indexterm><primary>sigquit</primary></indexterm></term>
      <listitem>
       <para>
-       This is the <firstterm>Immediate Shutdown</firstterm> mode.
+       C'est le mode d'<firstterm>arrêt immédiat</firstterm>.
        Le processus <command>postgres</command> maître envoie un signal
        <systemitem>sigquit</systemitem> à tous les processus fils et à quitter
        immédiatement non proprement. Les processus fils quittent immédiatement
@@ -1349,11 +1350,10 @@
   </important>
 
   <para>
-   To terminate an individual session while allowing other sessions to
-   continue, use <function>pg_terminate_backend()</function> (see <xref
-   linkend="functions-admin-signal-table"/>) or send a
-   <systemitem>SIGTERM</systemitem> signal to the child process associated with
-   the session.
+   Pour terminer une session individuelle tout en permettant aux autres de
+   continuer, utilisez <function>pg_terminate_backend()</function> (voir <xref
+   linkend="functions-admin-signal-table"/>) ou envoyez un signal
+   <systemitem>SIGTERM</systemitem> au processus fils associé à cette session.
   </para>
  </sect1>
 
@@ -1400,9 +1400,9 @@
    <filename>server.key</filename>, et pour le certificat,
    <filename>server.crt</filename> (<xref linkend="ssl-tcp"/>). Le client TCP
    doit se connecter en utilisant <literal>sslmode='require'</literal>,
-   specify <literal>sslverify='cn'</literal>
-   or <literal>sslverify='cert'</literal> and have the required certificate
-   files present (<xref linkend="libpq-connect"/>).
+   spécifier <literal>sslverify='cn'</literal>
+   ou <literal>sslverify='cert'</literal> et avoir les fichiers de certificat
+   requis présent (<xref linkend="libpq-connect"/>).
   </para>
  </sect1>
   
@@ -1624,23 +1624,22 @@
    <filename>server.crt</filename> et <filename>server.key</filename> doivent
    exister dans le répertoire de données du serveur. Ces fichiers doivent
    contenir, respectivement, le certificat et la clé privée du serveur.
-   On Unix systems, the permissions on <filename>server.key</filename> must
-   disallow any access to world or group; achieve this by the command
-   <command>chmod 0600 server.key</command>.  
-   Si
+   Sur les systèmes Unix, les droits de <filename>server.key</filename> doivent
+   interdire l'accès au groupe et au reste du monde&nbsp;; cela se fait avec
+   la commande <command>chmod 0600 server.key</command>. Si
    la clé privée est protégée par une phrase de passe, le serveur la
    demandera et ne se lancera pas tant qu'elle n'aura pas été saisie.
   </para>
 
   <sect2 id="ssl-client-certificates">
-   <title>Using client certificates</title>
+   <title>Utiliser des certificats clients</title>
    
   <para>
    Pour réclamer l'envoi d'un certificat de confiance par le client, placez
    les certificats des autorités (<acronym>CA</acronym>) de confiance dans
-   le fichier <filename>root.crt</filename> du répertoire des données, and
-   set the <literal>clientcert</literal> parameter to <literal>1</literal>
-   on the appropriate line(s) in pg_hba.conf. Un
+   le fichier <filename>root.crt</filename> du répertoire des données, et
+   configurez le paramètre <literal>clientcert</literal> à <literal>1</literal>
+   sur la ligne appropriée dans le fichier pg_hba.conf. Un
    certificat pourra ensuite être réclamé lors du lancement de la connexion
    SSL. (Voir <xref linkend="libpq-ssl"/> pour une description de la
    configuration de certificats sur le client.) Le serveur vérifiera que le
@@ -1653,21 +1652,21 @@
   </para>
 
   <para>
-   The <literal>clientcert</literal> option in <filename>pg_hba.conf</filename>
-   is available for all authentication methods, but only for rows
-   specified as <literal>hostssl</literal>. Unless specified, the default is
-   not to verify the client certificate.
+   L'option <literal>clientcert</literal> dans <filename>pg_hba.conf</filename>
+   est disponible pour toutes les méthodes d'authentification, mais seulement
+   pour les lignes <literal>hostssl</literal>. Sauf cas contraire précisé, la
+   valeur par défaut est de ne pas vérifier le certificat client.
   </para>
 
   <para>
-   You can use the authentication method <literal>cert</literal> to use the
-   client certificate for authenticating users. See
-   <xref linkend="auth-cert"/> for details.
+   Vous pouvez utiliser la méthode d'authentification <literal>cert</literal>
+   dans le but d'utiliser le certificat client comme authentification des
+   utilisateurs. Voir <xref linkend="auth-cert"/> pour les détails.
   </para>
   </sect2>
 
   <sect2 id="ssl-server-files">
-   <title>SSL Server File Usage</title>
+   <title>Utilisation des fichiers serveur SSL</title>
 
   <para>
    Les fichiers <filename>server.key</filename>,
@@ -1707,7 +1706,7 @@
      <row>
       <entry><filename>root.crt</filename></entry>
       <entry>autorités de confiance pour les certificats</entry>
-      <entry>checks that le certificat du client&nbsp;; vérifie que le certificat
+      <entry>vérifie le certificat du client&nbsp;; vérifie que le certificat
       du client est signé par une autorité de confiance</entry>
      </row>
 
@@ -1747,17 +1746,15 @@
 <programlisting>
 openssl req -x509 -in server.req -text -key server.key -out server.crt
 </programlisting>
-    pour transormer le certificat en un certificat auto-signé et pour copier
+    pour transformer le certificat en un certificat auto-signé et pour copier
     la clé et le certificat là où le serveur les cherchera. 
-    Finally do:
+    Enfin, faites&nbsp;:
 <programlisting>
 chmod og-rwx server.key
 </programlisting>
-    because the server will reject the file if its permissions are more
-    liberal than this.
-    Pour plus de
-    détails sur la façon de créer la clé privée et le certificat de votre
-    serveur, référez-vous à la documentation
+    car le serveur rejetera le fichier si ses droits sont plus importants.
+    Pour plus de détails sur la façon de créer la clé privée et le certificat
+    de votre serveur, référez-vous à la documentation
     d'<productname>OpenSSL</productname>.
    </para>
 
@@ -1766,9 +1763,8 @@
     certificat signé par une autorité (<acronym>CA</acronym>) (un des
     <acronym>CAs</acronym> global ou un local) devra être utilisé lorsque
     le serveur sera en production pour que le client puisse vérifier
-    l'identité du serveur. If all the clients
-    are local to the organization, using a local <acronym>CA</acronym> is
-    recommended.
+    l'identité du serveur. Si tous les clients sont locaux à l'organisation,
+    utiliser un <acronym>CA</acronym> local est recommandé.
    </para>
 
   </sect2>
@@ -1799,59 +1795,55 @@
 <programlisting>ssh -L 63333:localhost:5432 joe at foo.com</programlisting>
    Le premier numéro de l'argument <option>-l</option>, 63333, est le numéro de
    port de votre bout du tunnel&nbsp;; il peut être choisi librement.
-   (IANA reserves ports 49152 through 65535 for private use.)  Le second
+   (IANA réserve les ports 49152 à 65535 pour une utilisation privée.)  Le second
    numéro, 5432, est le bout distant du tunnel&nbsp;: le numéro de port que votre
    serveur utilise. Le nom ou l'adresse entre les numéros de port est l'hôte
    disposant du serveur de bases de données auquel vous souhaitez vous connecter,
-   as seen from the host you are logging in to, which
-   is <literal>foo.com</literal> in this example.In order to connect
-   to the database server using this tunnel, you connect to port 63333
-   on the local machine:
+   comme vu à partir de l'hôte où vous vous connectez, qui est
+   <literal>foo.com</literal> dans cet exemple. Pour vous connecter au serveur
+   en utilisant ce tunnel, vous vous connectez au port 63333 de la machine
+   locale&nbsp;:
 <programlisting>psql -h localhost -p 63333 postgres</programlisting>
    Sur le serveur de bases de données, il semblera que vous êtes réellement
-   l'utilisateur <literal>joe</literal> on host <literal>foo.com</literal>
-   connecting to <literal>localhost</literal> in that context, and it
-   will use whatever authentication procedure was configured for
-   connections from this user and host.  Note that the server will not
-   think the connection is SSL-encrypted, since in fact it is not
-   encrypted between the
-   <application>SSH</application> server and the
-   <productname>PostgreSQL</productname> server.  This should not pose any
-   extra security risk as long as they are on the same machine.
+   l'utilisateur <literal>joe</literal> sur l'hôte <literal>foo.com</literal>
+   en vous connectant à <literal>localhost</literal> dans ce contexte, et il
+   utilisera la procédure d'authentification configurée pour les connexions
+   de cet utilisateur et de cet hôte. Notez que le serveur ne pensera pas que
+   la connexion est chiffrée avec SSL car, en effet, elle n'est pas chiffrée
+   entre le serveur <application>SSH</application> et le serveur
+   <productname>PostgreSQL</productname>. Cela ne devrait pas poser un risque
+   de sécurité supplémentaire si les deux serveurs sont sur la même machine.
   </para>
 
   <para>
-   In order for the
-   tunnel setup to succeed you must be allowed to connect via
-   <command>ssh</command> as <literal>joe at foo.com</literal>, just
-   as if you had attempted to use <command>ssh</command> to set up a
-   terminal session.
+   Pour réussir la configuration du tunnel, vous devez être autorisé pour vous
+   connecter via <command>ssh</command> sur <literal>joe at foo.com</literal>,
+   comme si vous aviez tenté d'utiliser <command>ssh</command> pour initialiser
+   une session de terminal.
   </para>
 
   <para>
-   You could also have set up the port forwarding as
+   Vous pouvez aussi configurer la translation de port de cette façon&nbsp;:
 <programlisting>
 ssh -L 63333:foo.com:5432 joe at foo.com
 </programlisting>
-   but then the database server will see the connection as coming in
-   on its <literal>foo.com</literal> interface, which is not opened by
-   the default setting <literal>listen_addresses =
-   'localhost'</literal>.  This is usually not what you want.
+   mais alors le serveur de la base de données verra la connexion venir de
+   son interface <literal>foo.com</literal> qui n'est pas ouverte par son
+   paramétrage par défaut <literal>listen_addresses =
+   'localhost'</literal>. Ceci n'est pas habituellement ce que vous êtes.
   </para>
 
   <para>
-   If you have to <quote>hop</quote> to the database server via some
-   login host, one possible setup could look like this:
+   Si vous devez vous connecter au serveur de bases de données via un hôte de
+   connexion, une configuration possible serait&nbsp;:
 <programlisting>
 ssh -L 63333:db.foo.com:5432 joe at shell.foo.com
 </programlisting>
-   Note that this way the connection
-   from <literal>shell.foo.com</literal>
-   to <literal>db.foo.com</literal> will not be encrypted by the SSH
-   tunnel.
-   SSH offers quite a few configuration possibilities when the network
-   is restricted in various ways.  Please refer to the SSH
-   documentation for details.
+   Notez que de cette façon la connexion de <literal>shell.foo.com</literal>
+   à <literal>db.foo.com</literal> ne sera pas chiffrée par le tunnel SSH.
+   SSH offre un certain nombre de possibilités de configuration quand le
+   réseau est restreint. Merci de vous référer à la documentation de SSH pour
+   les détails.
   </para>
 
   <tip>

Modified: traduc/trunk/postgresql/spi.xml
===================================================================
--- traduc/trunk/postgresql/spi.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/spi.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -534,8 +534,9 @@
      <term><symbol>SPI_OK_REWRITTEN</symbol></term>
      <listitem>
       <para>
-       if the command was rewritten into another kind of command (e.g.,
-       <command>UPDATE</command> became an <command>INSERT</command>) by a <link linkend="rules">rule</link>.
+       si la commande a été réécrite dans un autre style de commande
+       (c'est-à-dire que <command>UPDATE</command> devient un
+       <command>INSERT</command>) par une <link linkend="rules">règle</link>.
       </para>
      </listitem>
     </varlistentry>
@@ -693,7 +694,7 @@
 
  <refnamediv>
   <refname>SPI_execute_with_args</refname>
-  <refpurpose>execute a command with out-of-line parameters</refpurpose>
+  <refpurpose>exécute une commande avec des paramètres hors ligne</refpurpose>
  </refnamediv>
 
  <indexterm><primary>SPI_execute_with_args</primary></indexterm>
@@ -711,29 +712,31 @@
   <title>Description</title>
 
   <para>
-   <function>SPI_execute_with_args</function> executes a command that might
-   include references to externally supplied parameters.  The command text
-   refers to a parameter as <literal>$<replaceable>n</replaceable></literal>, and
-   the call specifies data types and values for each such symbol.
-   <parameter>read_only</parameter> and <parameter>count</parameter> have
-   the same interpretation as in <function>SPI_execute</function>.
+   <function>SPI_execute_with_args</function> exécute une commande qui pourrait
+   inclure des références à des paramètres fournis en externe. Le texte de
+   commande fait référence à un paramètre avec
+   <literal>$<replaceable>n</replaceable></literal> et l'appel spécifie les
+   types et valeurs des données pour chaque symbole de ce type.
+   <parameter>read_only</parameter> et <parameter>count</parameter> ont la
+   même interprétation que dans <function>SPI_execute</function>.
   </para>
 
   <para>
-   The main advantage of this routine compared to
-   <function>SPI_execute</function> is that data values can be inserted
-   into the command without tedious quoting/escaping, and thus with much
-   less risk of SQL-injection attacks.
+   Le principal avantage de cette routine comparé à
+   <function>SPI_execute</function> est que les valeurs de données peuvent être
+   insérées dans la commande sans mise entre guillemets et échappements, et donc
+   avec beaucoup moins de risques d'attaques du type injection SQL.
   </para>
 
   <para>
-   Similar results can be achieved with <function>SPI_prepare</function> followed by
-   <function>SPI_execute_plan</function>; however, when using this function
-   the query plan is customized to the specific parameter values provided.
-   For one-time query execution, this function should be preferred.
-   If the same command is to be executed with many different parameters,
-   either method might be faster, depending on the cost of re-planning
-   versus the benefit of custom plans.
+   Des résultats similaires peuvent être réalisés avec <function>SPI_prepare</function>
+   suivi par <function>SPI_execute_plan</function>&nbsp;; néanmoins, lors de
+   l'utilisation de cette fonction, le plan de requête est personnalisé avec les
+   valeurs de paramètres spécifiques fournies. Pour une exécution simple, cette
+   fonction doit être préférée. Si la même commande doit être exécutée avec
+   plusieurs paramètres différents, chaque méthode peut être la plus rapide,
+   le coût de la planification pouvant contre-balancer les bénéfices des plans
+   personnalisés.
   </para>
  </refsect1>
 
@@ -745,7 +748,7 @@
     <term><literal>const char * <parameter>command</parameter></literal></term>
     <listitem>
      <para>
-      command string
+      chaîne de commande
      </para>
     </listitem>
    </varlistentry>
@@ -754,7 +757,7 @@
     <term><literal>int <parameter>nargs</parameter></literal></term>
     <listitem>
      <para>
-      number of input parameters (<literal>$1</literal>, <literal>$2</literal>, etc.)
+      nombre de paramètres en entrée (<literal>$1</literal>, <literal>$2</literal>, etc.)
      </para>
     </listitem>
    </varlistentry>
@@ -763,8 +766,8 @@
     <term><literal>Oid * <parameter>argtypes</parameter></literal></term>
     <listitem>
      <para>
-      an array containing the <acronym>OID</acronym>s of
-      the data types of the parameters
+      un tableau contenant les <acronym>OID</acronym> des types de données
+      des paramètres
      </para>
     </listitem>
    </varlistentry>
@@ -773,7 +776,7 @@
     <term><literal>Datum * <parameter>values</parameter></literal></term>
     <listitem>
      <para>
-      an array of actual parameter values
+      un tableau des valeurs réelles des paramètres
      </para>
     </listitem>
    </varlistentry>
@@ -782,13 +785,13 @@
     <term><literal>const char * <parameter>nulls</parameter></literal></term>
     <listitem>
      <para>
-      an array describing which parameters are null
+      un tableau décrivant les paramètres NULL
      </para>
 
      <para>
-      If <parameter>nulls</parameter> is <symbol>NULL</symbol> then
-      <function>SPI_execute_with_args</function> assumes that no parameters are
-      null.
+      Si <parameter>nulls</parameter> vaut <symbol>NULL</symbol>, alors
+      <function>SPI_execute_with_args</function> suppose qu'aucun paramètre
+      n'est NULL.
      </para>
     </listitem>
    </varlistentry>
@@ -797,7 +800,7 @@
     <term><literal>bool <parameter>read_only</parameter></literal></term>
     <listitem>
      <para>
-      <literal>true</literal> for read-only execution
+      <literal>true</literal> pour les exécutions en lecture seule
      </para>
     </listitem>
    </varlistentry>
@@ -806,7 +809,7 @@
     <term><literal>long <parameter>count</parameter></literal></term>
     <listitem>
      <para>
-      maximum number of rows to process or return
+      nombre maximum de lignes à traiter ou à renvoyer
      </para>
     </listitem>
    </varlistentry>
@@ -814,16 +817,16 @@
  </refsect1>
 
  <refsect1>
-  <title>Return Value</title>
+  <title>Valeur de retour</title>
 
   <para>
-   The return value is the same as for <function>SPI_execute</function>.
+   La valeur de retour est identique à celle de <function>SPI_execute</function>.
   </para>
 
   <para>
-   <varname>SPI_processed</varname> and
-   <varname>SPI_tuptable</varname> are set as in
-   <function>SPI_execute</function> if successful.
+   <varname>SPI_processed</varname> et
+   <varname>SPI_tuptable</varname> sont configurés comme dans
+   <function>SPI_execute</function> en cas de succès.
   </para>
  </refsect1>
 </refentry>
@@ -1601,7 +1604,7 @@
 
  <refnamediv>
   <refname>SPI_cursor_open_with_args</refname>
-  <refpurpose>set up a cursor using a query and parameters</refpurpose>
+  <refpurpose>ouvre un curseur en utilisant une requête et des paramètres</refpurpose>
  </refnamediv>
 
  <indexterm><primary>SPI_cursor_open_with_args</primary></indexterm>
@@ -1620,25 +1623,24 @@
   <title>Description</title>
 
   <para>
-   <function>SPI_cursor_open_with_args</function> sets up a cursor
-   (internally, a portal) that will execute the specified query.
-   Most of the parameters have the same meanings as the corresponding
-   parameters to <function>SPI_prepare_cursor</function>
-   and <function>SPI_cursor_open</function>.
+   <function>SPI_cursor_open_with_args</function> initialise un curseur
+   (en interne, un portail) qui exécutera la requête spécifié. La plupart des
+   paramètres ont la même signification que les paramètres correspondant de
+   <function>SPI_prepare_cursor</function> et <function>SPI_cursor_open</function>.
   </para>
 
   <para>
-   For one-time query execution, this function should be preferred
-   over <function>SPI_prepare_cursor</function> followed by
-   <function>SPI_cursor_open</function>.
-   If the same command is to be executed with many different parameters,
-   either method might be faster, depending on the cost of re-planning
-   versus the benefit of custom plans.
+   Pour une exécution seule, cette fonction sera préférée à
+   <function>SPI_prepare_cursor</function> suivie de
+   <function>SPI_cursor_open</function>. Si la même commande doit être exécutée
+   avec plusieurs paramètres différents, il n'y a pas de différences sur les
+   deux méthode, la replanification a un coût mais bénéficie de plans
+   personnalisés.
   </para>
 
   <para>
-   The passed-in data will be copied into the cursor's portal, so it
-   can be freed while the cursor still exists.
+   Les données passées seront copiées dans le portail du curseur, donc elles
+   seront libérées alors que le curseur existe toujours.
   </para>
  </refsect1>
 
@@ -1650,8 +1652,8 @@
     <term><literal>const char * <parameter>name</parameter></literal></term>
     <listitem>
      <para>
-      name for portal, or <symbol>NULL</symbol> to let the system
-      select a name
+      nom du portail, ou <symbol>NULL</symbol> pour que le système sélectionne
+      un nom de lui-même
      </para>
     </listitem>
    </varlistentry>
@@ -1660,7 +1662,7 @@
     <term><literal>const char * <parameter>command</parameter></literal></term>
     <listitem>
      <para>
-      command string
+      chaîne de commande
      </para>
     </listitem>
    </varlistentry>
@@ -1669,7 +1671,8 @@
     <term><literal>int <parameter>nargs</parameter></literal></term>
     <listitem>
      <para>
-      number of input parameters (<literal>$1</literal>, <literal>$2</literal>, etc.)
+      nombre de paramètres en entrée (<literal>$1</literal>,
+      <literal>$2</literal>, etc.)
      </para>
     </listitem>
    </varlistentry>
@@ -1678,8 +1681,8 @@
     <term><literal>Oid * <parameter>argtypes</parameter></literal></term>
     <listitem>
      <para>
-      an array containing the <acronym>OID</acronym>s of
-      the data types of the parameters
+      un tableau contenant les <acronym>OID</acronym> des types de données
+      des paramètres
      </para>
     </listitem>
    </varlistentry>
@@ -1688,7 +1691,7 @@
     <term><literal>Datum * <parameter>values</parameter></literal></term>
     <listitem>
      <para>
-      an array of actual parameter values
+      un tableau des valeurs actuelles des paramètres
      </para>
     </listitem>
    </varlistentry>
@@ -1697,13 +1700,13 @@
     <term><literal>const char * <parameter>nulls</parameter></literal></term>
     <listitem>
      <para>
-      an array describing which parameters are null
+      un tableau décrivant les paramètres NULL
      </para>
 
      <para>
-      If <parameter>nulls</parameter> is <symbol>NULL</symbol> then
-      <function>SPI_cursor_open_with_args</function> assumes that no
-      parameters are null.
+      Si <parameter>nulls</parameter> vaut <symbol>NULL</symbol>, alors
+      <function>SPI_cursor_open_with_args</function> suppose qu'aucun
+      paramètre n'est NULL.
      </para>
     </listitem>
    </varlistentry>
@@ -1712,7 +1715,7 @@
     <term><literal>bool <parameter>read_only</parameter></literal></term>
     <listitem>
      <para>
-      <literal>true</literal> for read-only execution
+      <literal>true</literal> pour une exécution en lecture seule
      </para>
     </listitem>
    </varlistentry>
@@ -1721,7 +1724,8 @@
     <term><literal>int <parameter>cursorOptions</parameter></literal></term>
     <listitem>
      <para>
-      integer bitmask of cursor options; zero produces default behavior
+      masque de bits des options du curseur&nbsp;: zéro cause le comportement
+      par défaut
      </para>
     </listitem>
    </varlistentry>
@@ -1729,11 +1733,12 @@
  </refsect1>
 
  <refsect1>
-  <title>Return Value</title>
+  <title>Valeur de retour</title>
 
   <para>
-   Pointer to portal containing the cursor.  Note there is no error
-   return convention; any error will be reported via <function>elog</function>.
+   Pointeur du portail contenant le curseur. Notez qu'il n'y a pas de convention
+   pour le renvoi des erreurs&nbsp;; toute erreur sera rapportée par
+   <function>elog</function>.
   </para>
  </refsect1>
 </refentry>

Modified: traduc/trunk/postgresql/syntax.xml
===================================================================
--- traduc/trunk/postgresql/syntax.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/syntax.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -1192,7 +1192,7 @@
 
     <listitem>
      <para>
-      A window function call.
+      Un appel de fonction window.
      </para>
     </listitem>
 

Modified: traduc/trunk/postgresql/trigger.xml
===================================================================
--- traduc/trunk/postgresql/trigger.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/trigger.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -39,10 +39,11 @@
     exécuté. Les fonctions déclencheur peuvent être définies pour s'exécuter
     avant ou après une commande <command>INSERT</command>,
     <command>UPDATE</command> ou <command>DELETE</command>, soit une fois par
-    ligne modifiée, soit une fois par expression <acronym>SQL</acronym>. Triggers can also fire
-    for <command>TRUNCATE</command> statements. Si un
-    événement déclencheur se produit, le gestionnaire de déclencheurs est appelé
-    au bon moment pour gérer l'événement.
+    ligne modifiée, soit une fois par expression <acronym>SQL</acronym>. Les
+    triggers peuvent aussi être déclenchés par des instructions
+    <command>TRUNCATE</command>. Si un événement déclencheur se produit, le
+    gestionnaire de déclencheurs est appelé au bon moment pour gérer
+    l'événement.
     </para>
 
    <para>
@@ -74,8 +75,8 @@
     applicable. Ces deux types sont quelque fois appelés respectivement des
     <firstterm>déclencheurs niveau ligne</firstterm> et des
     <firstterm>déclencheurs niveau instruction</firstterm>.
-    Triggers on <command>TRUNCATE</command> may only be
-    defined at statement-level.
+    Les triggers sur <command>TRUNCATE</command> peuvent seulement être définis
+    au niveau instruction.
    </para>
 
    <para>
@@ -419,7 +420,8 @@
           <term><literal>TRIGGER_FIRED_BY_TRUNCATE(tg_event)</literal></term>
           <listitem>
            <para>
-            Returns true if the trigger was fired by a <command>TRUNCATE</command> command.
+            Renvoie true si le trigger a été déclenché par une commande
+	    <command>TRUNCATE</command>.
            </para>
           </listitem>
          </varlistentry>
@@ -645,7 +647,7 @@
    </para>
 
    <para>
-    Après avoir compilé le code source (see <xref
+    Après avoir compilé le code source (voir <xref
     linkend="dfunc"/>), déclarez la fonction et les
     déclencheurs&nbsp;:
 <programlisting>CREATE FUNCTION trigf() RETURNS trigger

Modified: traduc/trunk/postgresql/typeconv.xml
===================================================================
--- traduc/trunk/postgresql/typeconv.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/typeconv.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -171,19 +171,21 @@
 </indexterm>
 
 <para>
-An additional heuristic is provided in the parser to allow better guesses
-at proper casting behavior among groups of types that have implicit casts.
-Data types are divided into several basic <firstterm>type
-categories</firstterm>, including <type>boolean</type>, <type>numeric</type>,
-<type>string</type>, <type>bitstring</type>, <type>datetime</type>,
-<type>timespan</type>, <type>geometric</type>, <type>network</type>, and
-user-defined.  (For a list see <xref linkend="catalog-typcategory-table"/>;
-but note it is also possible to create custom type categories.)  Within each
-category there can be one or more <firstterm>preferred types</firstterm>, which
-are preferentially selected when there is ambiguity.  With careful selection
-of preferred types and available implicit casts, it is possible to ensure that
-ambiguous expressions (those with multiple candidate parsing solutions) can be
-resolved in a useful way.
+Une heuristique supplémentaire est fournie dans l'analyseur pour permettre de
+meilleures estimations sur la bonne conversion de type parmi un groupe de types
+qui ont des conversions implicites. Les types de données sont divisées en
+plusieurs <firstterm>catégories de type</firstterm> basiques, incluant
+<type>boolean</type>, <type>numeric</type>, <type>string</type>,
+<type>bitstring</type>, <type>datetime</type>, <type>timespan</type>,
+<type>geometric</type>, <type>network</type> et définis par l'utilisateur.
+(Pour une liste, voir <xref linkend="catalog-typcategory-table"/>&nbsp;; mais
+notez qu'il est aussi possible de créer des catégories de type personnalisées.)
+À l'intérieur de chaque catégorie, il peut y avoir une ou plusieurs
+<firstterm>types préférés</firstterm>, qui sont sélectionnés par préférence
+quand il n'y a plus d'ambiguïtés. Avec une sélection attentive des types
+préférés et des conversions implicites disponibles, il est possible de s'assurer
+que les expressions ambigues (celles avec plusieurs solutions candidates) peuvent
+être résolus d'une façon utile.
 </para>
 
 <para>
@@ -515,27 +517,28 @@
 </step>
 <step performance="optional">
 <para>
-If a function is declared with a <literal>VARIADIC</literal> array parameter, and
-the call does not use the <literal>VARIADIC</literal> keyword, then the function
-is treated as if the array parameter were replaced by one or more occurrences
-of its element type, as needed to match the call.  After such expansion the
-function might have effective argument types identical to some non-variadic
-function.  In that case the function appearing earlier in the search path is
-used, or if the two functions are in the same schema, the non-variadic one is
-preferred.
+Si une fonction est déclarée avec un paramètre <literal>VARIADIC</literal> et
+que l'appel n'utilise pas le mot clé <literal>VARIADIC</literal>, alors la
+fonction est traitée comme si le paramètre tableau était remplacé par une ou
+plusieurs occurrences de son type élémentaire, autant que nécessaire pour
+correspondre à l'appel. Après cette expansion, la fonction pourrait avoir
+des types d'arguments identiques à certaines fonctions non variadic. Dans ce
+cas, la fonction apparaissant plus tôt dans le chemin de recherche est utilisée
+ou, si les deux fonctions sont dans le même schéma, celle qui n'est pas VARIADIC
+est préférée.
 </para>
 </step>
 <step performance="optional">
 <para>
-Functions that have default values for parameters are considered to match any
-call that omits zero or more of the defaultable parameter positions.  If more
-than one such function matches a call, the one appearing earliest in the
-search path is used.  If there are two or more such functions in the same
-schema with identical parameter types in the non-defaulted positions (which is
-possible if they have different sets of defaultable parameters), the system
-will not be able to determine which to prefer, and so an <quote>ambiguous
-function call</quote> error will result if no better match to the call can be
-found.
+Les fonctions qui ont des valeurs par défaut pour les paramètres sont considérés
+comme correspondant à un appel qui omet zéro ou plus des paramètres ayant des
+valeurs par défaut. Si plus d'une fonction de ce type correspondent à un appel,
+celui apparaissant en premier dans le chemin des schémas est utilisé. S'il
+existe deux ou plus de ces fonctions dans le même schémas avec les même types de
+paramètres pour les paramètres sans valeur par défaut (ce qui est possible s'ils
+ont des ensembles différents de paramètres par défaut), le système ne sera pas
+capable de déterminer laquelle sélectionnée, ce qui résultera en une erreur
+<quote>ambiguous function call</quote>.
 </para>
 </step>
 </substeps>

Modified: traduc/trunk/postgresql/wal.xml
===================================================================
--- traduc/trunk/postgresql/wal.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/wal.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -155,15 +155,18 @@
 
    <tip>
     <para>
-     Because <acronym>WAL</acronym> restores database file
-     contents after a crash, journaled filesystems are not necessary for
-     reliable storage of the data files or WAL files.  In fact, journaling
-     overhead can reduce performance, especially if journaling
-     causes file system <emphasis>data</emphasis> to be flushed
-     to disk.  Fortunately, data flushing during journaling can
-     often be disabled with a filesystem mount option, e.g.
-     <literal>data=writeback</literal> on a Linux ext3 file system.
-     Journaled file systems do improve boot speed after a crash.
+     Comme les journaux de transaction permettent de restaurer le contenu des
+     fichiers de base de données après un arrêt brutal, les systèmes de
+     fichiers journalisés ne sont pas nécessaires pour stocker avec fiabilité
+     les fichiers de données ou les journaux de transactions. En fait, la
+     surcharge causée par la journalisation peut réduire les performances,
+     tout spécialement si la journalisation fait que les
+     <emphasis>données</emphasis> du système de fichiers sont envoyées sur
+     disque. Heureusement, l'envoi des données lors de la journalisation
+     peut souvent être désactivé avec une option de montage du système de
+     fichiers, par exemple <literal>data=writeback</literal> sur un système de
+     fichiers Linux ext3. Par contre, les systèmes de fichiers journalisés
+     améliorent la rapidité au démarrage après un arrêt brutal.
     </para>
    </tip>
 
@@ -360,7 +363,8 @@
    point de contrôle.  Au moment du point de contrôle, toutes les
    pages de données non propres sont écrites sur le disque et une
    entrée spéciale, pour le point de contrôle, est écrite dans le
-   journal. (The changes were previously flushed to the <acronym>WAL</acronym> files.)
+   journal. (Les modifications étaient déjà envoyées dans les journaux de
+   transactions.)
    En cas de défaillance, la procédure de récupération recherche le
    dernier enregistrement d'un point de vérification dans les traces
    (enregistrement connus sous le nom de <quote>redo log</quote>) à partir
@@ -376,11 +380,12 @@
   </para>
 
   <para>
-   The checkpoint requirement of flushing all dirty data pages to disk
-   can cause a significant I/O load.  For this reason, checkpoint
-   activity is throttled so I/O begins at checkpoint start and completes
-   before the next checkpoint starts;  this minimizes performance
-   degradation during checkpoints.
+   CHECKPOINT doit écrire toutes les pages de données modifiées sur disque, ce
+   qui peut causer une charge disque importante. Du coup, l'activité des
+   CHECKPOINT est diluée de façon à ce que les entrées/sorties disque
+   commencent au début du CHECKPOINT et se termine avant le démarrage du
+   prochain CHECKPOINT&nbsp;; ceci minimise la dégradation des performances
+   lors des CHECKPOINT.
   </para>
 
   <para>
@@ -573,12 +578,12 @@
   <para>
    Les journaux de transaction sont stockés dans le répertoire
    <filename>pg_xlog</filename> sous le répertoire de données, comme un ensemble
-   de fichiers, chacun d'une taille de 16&nbsp;Mo généralement (but the size can be changed
-   by altering the <option>--with-wal-segsize</option> configure option when
-   building the server). Chaque
-   fichier est divisé en pages de généralement 8&nbsp;Ko (this size can be
-   changed via the <option>--with-wal-blocksize</option>
-   configure option). Les en-têtes de
+   de fichiers, chacun d'une taille de 16&nbsp;Mo généralement (cette taille
+   pouvant être modifiée en précisant une valeur pour l'option
+   <option>--with-wal-segsize</option> de configure lors de la construction
+   du serveur). Chaque fichier est divisé en pages de généralement 8&nbsp;Ko
+   (cette taille pouvant être modifiée en précisant une valeur pour l'option
+   <option>--with-wal-blocksize</option> de configure). Les en-têtes de
    l'entrée du journal sont décrites dans
    <filename>access/xlog.h</filename>&nbsp;; le contenu de l'entrée dépend
    du type de l'événement qui est enregistré.  Les fichiers
@@ -622,9 +627,9 @@
    l'avant à partir de la position du journal indiquée dans l'entrée du
    point de contrôle. Parce que l'ensemble du contenu des pages de
    données est sauvegardé dans le journal à la première modification de
-   page après un point de contrôle (assuming
-   <xref linkend="guc-full-page-writes"/> is not disabled), toutes les pages changées depuis
-   le point de contrôle seront restaurées dans un état cohérent.
+   page après un point de contrôle (en supposant que <xref
+   linkend="guc-full-page-writes"/> n'est pas désactivé), toutes les pages
+   changées depuis le point de contrôle seront restaurées dans un état cohérent.
   </para>
 
   <para>

Modified: traduc/trunk/postgresql/xfunc.xml
===================================================================
--- traduc/trunk/postgresql/xfunc.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/xfunc.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -99,8 +99,9 @@
    <para>
     Une fonction SQL peut être déclarée de façon à renvoyer un ensemble (set)
     en spécifiant le type renvoyé par la fonction comme <literal>SETOF
-    <replaceable>un_type</replaceable></literal>, or equivalently by declaring it as
-    <literal>RETURNS TABLE(<replaceable>columns</replaceable>)</literal>. Dans ce
+    <replaceable>un_type</replaceable></literal>, ou de façon équivalente en
+    la déclarant comme  <literal>RETURNS
+    TABLE(<replaceable>colonnes</replaceable>)</literal>. Dans ce
     cas, toutes les lignes de la dernière requête sont renvoyées. Des détails
     supplémentaires sont donnés plus loin dans ce chapitre.
    </para>
@@ -110,9 +111,9 @@
     de plusieurs instructions SQL séparées par des points-virgule. Un
     point-virgule après la dernière instruction est optionnel. Sauf si la
     fonction déclare renvoyer <type>void</type>, la dernière instruction doit
-    être un <command>SELECT</command>, or an <command>INSERT</command>,
-    <command>UPDATE</command>, or <command>DELETE</command>
-    that has a <literal>RETURNING</literal> clause.
+    être un <command>SELECT</command> ou un <command>INSERT</command>,
+    <command>UPDATE</command> ou un <command>DELETE</command> qui a une clause
+    <literal>RETURNING</literal>.
    </para>
 
    <para>
@@ -125,7 +126,7 @@
     placer de commandes <command>BEGIN</command>, <command>COMMIT</command>,
     <command>ROLLBACK</command> ou <command>SAVEPOINT</command> dans une fonction
     <acronym>SQL</acronym>). Néanmoins, la commande finale doit être un
-    <command>SELECT</command> or have a <literal>RETURNING</literal> clause
+    <command>SELECT</command> ou doit avoir une clause <literal>RETURNING</literal>
     qui renvoie ce qui a été spécifié comme type
     de retour de la fonction. Autrement, si vous voulez définir une fonction
     SQL qui réalise des actions mais n'a pas de valeur utile à renvoyer,
@@ -252,14 +253,14 @@
 </programlisting>
 
      qui ajuste le solde et renvoie sa nouvelle valeur.
-     The same thing could be done in one command using
-     <literal>RETURNING</literal>:
+     La même chose peut se faire en une commande en utilisant la clause
+     <literal>RETURNING</literal>&nbsp;:
 
 <programlisting>
 CREATE FUNCTION tf1 (integer, numeric) RETURNS numeric AS $$
-    UPDATE bank
+    UPDATE banque
         SET balance = balance - $2
-        WHERE accountno = $1
+        WHERE no_compte = $1
     RETURNING balance;
 $$ LANGUAGE SQL;
 </programlisting>
@@ -551,8 +552,8 @@
 
     <para>
      Les paramètres peuvent être marqués comme <literal>IN</literal> (par défaut),
-     <literal>OUT</literal> ou <literal>INOUT</literal>, or
-<literal>VARIADIC</literal>.
+     <literal>OUT</literal> ou <literal>INOUT</literal> ou
+     <literal>VARIADIC</literal>.
      Un paramètre <literal>INOUT</literal>
      sert à la fois de paramètre en entrée (il fait partie de la liste
      d'arguments en appel) et comme paramètre de sortie (il fait partie du
@@ -726,8 +727,8 @@
     <title>Fonctions <acronym>SQL</acronym> renvoyant un ensemble </title>
 
     <indexterm>
-     <primary>function</primary>
-     <secondary>with SETOF</secondary>
+     <primary>fonction</primary>
+     <secondary>avec SETOF</secondary>
     </indexterm>
 
     <para>
@@ -827,14 +828,15 @@
 
     <note>
      <para>
-      If a function's last command is <command>INSERT</command>,
-      <command>UPDATE</command>, or <command>DELETE</command> with
-      <literal>RETURNING</literal>, that command will
-      always be executed to completion, even if the function is not declared
-      with <literal>SETOF</literal> or the calling query does not fetch all the
-      result rows.  Any extra rows produced by the <literal>RETURNING</literal>
-      clause are silently dropped, but the commanded table modifications
-      still happen (and are all completed before returning from the function).
+      Si la dernière commande d'une fonction est <command>INSERT</command>,
+      <command>UPDATE</command> ou <command>DELETE</command> avec une clause
+      <literal>RETURNING</literal>, cette commande sera toujours exécutée
+      jusqu'à sa fin, même si la fonction n'est pas déclarée avec
+      <literal>SETOF</literal> ou que la requête appelante ne renvoie pas toutes
+      les lignes résultats. Toutes les lignes supplémentaires produites par la
+      clause <literal>RETURNING</literal> sont silencieusement abandonnées mais
+      les modifications de table sont pris en compte (et sont toutes terminées
+      avant que la fonction ne se termine).
      </para>
     </note>
    </sect2>
@@ -949,8 +951,8 @@
     </para>
 
     <para>
-     Polymorphism can also be used with variadic functions.
-     For example:
+     Le polymorphisme peut aussi être utilisé avec des fonctions variadic.
+     Par exemple&nbsp;:
 <screen>
 CREATE FUNCTION anyleast (VARIADIC anyarray) RETURNS anyelement AS $$
     SELECT min($1[i]) FROM generate_subscripts($1, 1) g(i);
@@ -1026,15 +1028,16 @@
         d'éviter le problème en ne choisissant aucun nom conflictuel.
       </para>
       
-   <para>
-    Another possible conflict is between variadic and non-variadic functions.
-    For instance, it is possible to create both <literal>foo(numeric)</literal> and
-    <literal>foo(VARIADIC numeric[])</literal>.  In this case it is unclear which one
-    should be matched to a call providing a single numeric argument, such as
-    <literal>foo(10.1)</literal>.  The rule is that the function appearing
-    earlier in the search path is used, or if the two functions are in the
-    same schema, the non-variadic one is preferred.
-   </para>
+      <para>
+       Un autre conflit possible se trouve entre les fonctions variadic et les
+       autres. En fait, il est possible de créer à la fois
+       <literal>foo(numeric)</literal> et <literal>foo(VARIADIC numeric[])</literal>.
+       Dans ce cas, il n'est pas simple de savoir lequel sera sélectionné lors
+       d'un appel avec un seul argument numérique, par exemple
+       <literal>foo(10.1)</literal>. La règle est que la fonction apparaissant
+       plsu tôt dans le chemin des schémas est utilisé. De même, si les deux
+       fonctions sont dans le même schéma, la non variadic est préféré.
+      </para>
    
       <para>
         Lors de la surcharge de fonctions en langage C, il existe une

Modified: traduc/trunk/postgresql/xindex.xml
===================================================================
--- traduc/trunk/postgresql/xindex.xml	2009-04-28 10:16:03 UTC (rev 1311)
+++ traduc/trunk/postgresql/xindex.xml	2009-04-28 21:40:43 UTC (rev 1312)
@@ -451,10 +451,10 @@
        <entry>4</entry>
       </row>
       <row>
-       <entry>comparePartial - (optional method) compare partial key from
-        query and key from index, and return an integer less than zero, zero,
-        or greater than zero, indicating whether GIN should ignore this index
-        entry, treat the entry as a match, or stop the index scan</entry>
+       <entry>comparePartial - (méthode optionnelle) compare la clé partielle
+        de la requête et la clé de l'index, et renvoie un entier négatif, nul
+	ou positif, indiquant si GIN doit ignorer cette entrée d'index, traiter
+	l'entrée comme une correspondance ou arrer le parcours d'index</entry>
        <entry>5</entry>
       </row>
      </tbody>
@@ -722,7 +722,7 @@
 
 CREATE OPERATOR CLASS int8_ops
 DEFAULT FOR TYPE int8 USING btree FAMILY integer_ops AS
-  -- standard int8 comparisons
+  -- comparaisons int8 standard
   OPERATOR 1 < ,
   OPERATOR 2 <= ,
   OPERATOR 3 = ,
@@ -732,7 +732,7 @@
 
 CREATE OPERATOR CLASS int4_ops
 DEFAULT FOR TYPE int4 USING btree FAMILY integer_ops AS
-  -- standard int4 comparisons
+  -- comparaisons int4 standard
   OPERATOR 1 < ,
   OPERATOR 2 <= ,
   OPERATOR 3 = ,
@@ -742,7 +742,7 @@
 
 CREATE OPERATOR CLASS int2_ops
 DEFAULT FOR TYPE int2 USING btree FAMILY integer_ops AS
-  -- standard int2 comparisons
+  -- comparaisons int2 standard
   OPERATOR 1 < ,
   OPERATOR 2 <= ,
   OPERATOR 3 = ,
@@ -751,7 +751,7 @@
   FUNCTION 1 btint2cmp(int2, int2) ;
 
 ALTER OPERATOR FAMILY integer_ops USING btree ADD
-  -- cross-type comparisons int8 vs int2
+  -- comparaisons inter-types int8 vs int2
   OPERATOR 1 < (int8, int2) ,
   OPERATOR 2 <= (int8, int2) ,
   OPERATOR 3 = (int8, int2) ,
@@ -759,7 +759,7 @@
   OPERATOR 5 > (int8, int2) ,
   FUNCTION 1 btint82cmp(int8, int2) ,
 
-  -- cross-type comparisons int8 vs int4
+  -- comparaisons inter-types int8 vs int4
   OPERATOR 1 < (int8, int4) ,
   OPERATOR 2 <= (int8, int4) ,
   OPERATOR 3 = (int8, int4) ,
@@ -767,7 +767,7 @@
   OPERATOR 5 > (int8, int4) ,
   FUNCTION 1 btint84cmp(int8, int4) ,
 
-  -- cross-type comparisons int4 vs int2
+  -- comparaisons inter-types int4 vs int2
   OPERATOR 1 < (int4, int2) ,
   OPERATOR 2 <= (int4, int2) ,
   OPERATOR 3 = (int4, int2) ,
@@ -775,7 +775,7 @@
   OPERATOR 5 > (int4, int2) ,
   FUNCTION 1 btint42cmp(int4, int2) ,
 
-  -- cross-type comparisons int4 vs int8
+  -- comparaisons inter-types int4 vs int8
   OPERATOR 1 < (int4, int8) ,
   OPERATOR 2 <= (int4, int8) ,
   OPERATOR 3 = (int4, int8) ,
@@ -783,7 +783,7 @@
   OPERATOR 5 > (int4, int8) ,
   FUNCTION 1 btint48cmp(int4, int8) ,
 
-  -- cross-type comparisons int2 vs int8
+  -- comparaisons inter-types int2 vs int8
   OPERATOR 1 < (int2, int8) ,
   OPERATOR 2 <= (int2, int8) ,
   OPERATOR 3 = (int2, int8) ,
@@ -791,7 +791,7 @@
   OPERATOR 5 > (int2, int8) ,
   FUNCTION 1 btint28cmp(int2, int8) ,
 
-  -- cross-type comparisons int2 vs int4
+  -- comparaisons inter-types int2 vs int4
   OPERATOR 1 < (int2, int4) ,
   OPERATOR 2 <= (int2, int4) ,
   OPERATOR 3 = (int2, int4) ,
@@ -955,17 +955,18 @@
    non rectangulaires comme des polygones. Cependant, nous pourrions utiliser
    l'index pour trouver des objets dont les rectangles limites chevauchent les
    limites de l'objet cible. Dans ce cas, l'index est dit être à perte
-   pour l'opérateur.  Lossy index searches are implemented by having the index
-   method return a <firstterm>recheck</firstterm> flag when a row might or might
-   not really satisfy the query condition.  The core system will then
-   test the original query condition on the retrieved row to see whether
-   it should be returned as a valid match.  This approach works if
-   the index is guaranteed to return all the required rows, plus perhaps
-   some additional rows, which can be eliminated by performing the original
-   operator invocation.  The index methods that support lossy searches
-   (currently, GiST and GIN) allow the support functions of individual
-   operator classes to set the recheck flag, and so this is essentially an
-   operator-class feature.
+   pour l'opérateur. Les recherches par index à perte sont implémentées en ayant
+   une méthode d'indexage qui renvoie un drapeau <firstterm>recheck</firstterm>
+   quand une ligne pourrait ou non satisfaire la condition de la requête. Le
+   système principal testera ensuite la condition originale de la requête sur
+   la ligne récupérée pour s'assurer que la correspondance est réelle. Cette
+   approche fonctionne si l'index garantit de renvoyer toutes les lignes
+   requises, ainsi que quelques lignes supplémentaires qui pourront être
+   éliminées par la vérification. Les méthodes d'indexage qui supportent
+   les recherches à perte (actuellement GiST et GIN) permettent aux fonctions
+   de support des classes individuelles d'opérateurs de lever le drapeau
+   recheck, et donc c'est essentiellement une fonctionnalité pour les
+   classes d'opérateur.
   </para>
 
   <para>



Plus d'informations sur la liste de diffusion Trad