[Trad] [svn:pgfr] r1317 - traduc/trunk/postgresql
admin at listes.postgresql.fr
admin at listes.postgresql.fr
Dim 3 Mai 13:57:02 CEST 2009
Author: gleu
Date: 2009-05-03 13:57:02 +0200 (Sun, 03 May 2009)
New Revision: 1317
Modified:
traduc/trunk/postgresql/func.xml
traduc/trunk/postgresql/release.xml
Log:
Suite de la traduction 8.4.
Modified: traduc/trunk/postgresql/func.xml
===================================================================
--- traduc/trunk/postgresql/func.xml 2009-05-02 15:22:39 UTC (rev 1316)
+++ traduc/trunk/postgresql/func.xml 2009-05-03 11:57:02 UTC (rev 1317)
@@ -343,12 +343,12 @@
Si l'<replaceable>expression</replaceable> est une valeur de ligne, alors
<literal>IS NULL</literal> est vrai quand l'expression même de la ligne est
NULL ou quand tous les champs de la ligne sont NULL alors que
- <literal>IS NOT NULL</literal> est vrai quand l'expression même de la ligne est
- non NULL et que tous les champs de la ligne sont non NULL.Because of this behavior,
- <literal>IS NULL</literal> and <literal>IS NOT NULL</literal> do not always return
- inverse results for row-valued expressions, i.e. a row-valued
- expression that contains both NULL and non-null values will return false
- for both tests.
+ <literal>IS NOT NULL</literal> est vrai quand l'expression même de la ligne
+ est non NULL et que tous les champs de la ligne sont non NULL. À cause de
+ ce comportement, <literal>IS NULL</literal> et <literal>IS NOT NULL</literal>
+ ne renvoient pas toujours des résultats inversés pour les expressions de
+ lignes, c'est-à-dire une expression de ligne qui contient à la fois des
+ valeurs NULL et des valeurs non NULL retournera faux pour les deux tests.
Cette définition, conforme au standard SQL, est une modification du
comportement incohérent des versions de <productname>PostgreSQL</productname>
antérieures à la 8.2.
@@ -1663,10 +1663,10 @@
utilisée comme libellé dans un chaîne d'instruction
<acronym>SQL</acronym>. Les guillemets simples compris dans la chaîne
et les antislash sont correctement doublés.
- Note that <function>quote_literal</function> returns null on null
- input; if the argument might be null,
- <function>quote_nullable</function> is often more suitable.
- See also <xref linkend="plpgsql-quote-literal-example"/>.
+ Notez que <function>quote_literal</function> renvoit NULL si son
+ argument est NULL ; si l'argument peut être NULL, la fonction
+ <function>quote_nullable</function> convient mieux.
+ Voir aussi <xref linkend="plpgsql-quote-literal-example"/>.
</entry>
<entry><literal>quote_literal( 'O\'Reilly')</literal></entry>
<entry><literal>'O''Reilly'</literal></entry>
@@ -1698,26 +1698,28 @@
</row>
<row>
- <entry><literal><function>quote_nullable</function>(<parameter>string</parameter> <type>text</type>)</literal></entry>
+ <entry><literal><function>quote_nullable</function>(<parameter>chaine</parameter> <type>text</type>)</literal></entry>
<entry><type>text</type></entry>
<entry>
- Return the given string suitably quoted to be used as a string literal
- in an <acronym>SQL</acronym> statement string; or, if the argument
- is null, return <literal>NULL</literal>.
- Embedded single-quotes and backslashes are properly doubled.
- See also <xref linkend="plpgsql-quote-literal-example"/>.
+ Renvoit la chaîne donnée convenablement mise entre guillemets pour
+ être utilisée comme une chaîne litérale dans une instruction SQL ;
+ or si l'argument est NULL, elle renvoit <literal>NULL</literal>.
+ Les guillemets simples et antislashs dans la chaîne sont doublés
+ correctement. Voir aussi <xref
+ linkend="plpgsql-quote-literal-example"/>.
</entry>
<entry><literal>quote_nullable(NULL)</literal></entry>
<entry><literal>NULL</literal></entry>
</row>
<row>
- <entry><literal><function>quote_nullable</function>(<parameter>value</parameter> <type>anyelement</type>)</literal></entry>
+ <entry><literal><function>quote_nullable</function>(<parameter>valeur</parameter> <type>anyelement</type>)</literal></entry>
<entry><type>text</type></entry>
<entry>
- Coerce the given value to text and then quote it as a literal;
- or, if the argument is null, return <literal>NULL</literal>.
- Embedded single-quotes and backslashes are properly doubled.
+ Renvoit la valeur donnée en texte, puis la met entre guillemets comme un
+ litéral ; or, si l'argument est NULL, elle renvoit
+ <literal>NULL</literal>.Les guillemets simples et antislashs dans la
+ chaîne sont doublés correctement.
</entry>
<entry><literal>quote_nullable(42.5)</literal></entry>
<entry><literal>'42.5'</literal></entry>
@@ -5475,12 +5477,13 @@
</itemizedlist>
</para>
<para>
- Attempting to construct a date using a mixture of ISO week and
- Gregorian date fields is nonsensical, and will cause an error. In the
- context of an ISO year, the concept of a <quote>month</quote> or <quote>day
- of month</quote> has no meaning. In the context of a Gregorian year, the
- ISO week has no meaning. Users should take care to keep Gregorian and
- ISO date specifications separate.
+ Essayer de construire une date en utilisant un mix de champs de semaine
+ ISO et de date grégorienne n'a pas de sens et renverra du coup une erreur.
+ Dans le contexte d'une année ISO, le concept d'un <quote>mois</quote> ou
+ du <quote>jour d'un mois</quote> n'a pas de signification. Dans le
+ contexte d'une année grégorienne, la semaine ISO n'a pas de signification.
+ Les utilisateurs doivent faire attention à séparer les spécifications
+ grégoriennes et de date ISO.
</para>
</listitem>
@@ -5672,38 +5675,38 @@
</para>
<para>
- Certain modifiers can be applied to any template pattern to alter its
- behavior. For example, <literal>FM9999</literal>
- is the <literal>9999</literal> pattern with the
- <literal>FM</literal> modifier.
- <xref linkend="functions-formatting-numericmod-table"/> shows the
- modifier patterns for numeric formatting.
+ Certains modificateurs peuvent être appliqués à un motif pour modifier
+ son comportement. Par exemple, <literal>FM9999</literal> est le motif
+ <literal>9999</literal> avec le modificateur <literal>FM</literal>.
+ <xref linkend="functions-formatting-numericmod-table"/> affiche les
+ motifs pour le formatage numérique.
</para>
<table id="functions-formatting-numericmod-table">
- <title>Template Pattern Modifiers for Numeric Formatting</title>
+ <title>Modifications de motifs pour le formatage numérique</title>
<tgroup cols="3">
<thead>
<row>
- <entry>Modifier</entry>
+ <entry>Modificateur</entry>
<entry>Description</entry>
- <entry>Example</entry>
+ <entry>Exemple</entry>
</row>
</thead>
<tbody>
<row>
- <entry><literal>FM</literal> prefix</entry>
- <entry>fill mode (suppress padding blanks and zeroes)</entry>
+ <entry>préfixe <literal>FM</literal></entry>
+ <entry>mode de remplissuage (supprime les blancs et zéris avant et
+ après la chaîne)</entry>
<entry><literal>FM9999</literal></entry>
</row>
<row>
- <entry><literal>TH</literal> suffix</entry>
- <entry>uppercase ordinal number suffix</entry>
+ <entry>suffixe <literal>TH</literal></entry>
+ <entry>suffixe d'un nombre ordinal en majuscule</entry>
<entry><literal>999TH</literal></entry>
</row>
<row>
- <entry><literal>th</literal> suffix</entry>
- <entry>lowercase ordinal number suffix</entry>
+ <entry>suffixe <literal>th</literal></entry>
+ <entry>suffixe d'un nombre ordinal en minuscule</entry>
<entry><literal>999th</literal></entry>
</row>
</tbody>
@@ -8744,8 +8747,8 @@
</para>
<para>
- To determine the order of the concatenation, something like the
- following approach can be used:
+ Pour déterminer l'ordre de la concaténation, l'approche suivante peut
+ être utilisée :
<screen><![CDATA[
SELECT xmlagg(x) FROM (SELECT * FROM test ORDER BY y DESC) AS tab;
xmlagg
@@ -8753,8 +8756,8 @@
<bar/><foo>abc</foo>
]]></screen>
- Again, see <xref linkend="functions-aggregate"/> for additional
- information.
+ De nouveau, voir <xref linkend="functions-aggregate"/> pour plus
+ d'informations.
</para>
</sect3>
@@ -8803,8 +8806,8 @@
</para>
<para>
- The second argument must be a well formed XML document. In particular,
- it must have a single root node element.
+ Le second argument doit être un document XML bien formé. En particulier, il
+ doit avoir un seul élément de nœud racine.
</para>
<para>
@@ -9778,7 +9781,7 @@
</literal>
</entry>
<entry><type>int</type></entry>
- <entry>returns the number of dimensions of the array</entry>
+ <entry>renvoit le nombre de dimensions du tableau</entry>
<entry><literal>array_ndims(ARRAY[[1,2,3], [4,5,6]])</literal></entry>
<entry><literal>2</literal></entry>
</row>
@@ -9802,8 +9805,8 @@
</literal>
</entry>
<entry><type>anyarray</type></entry>
- <entry>returns an array initialized with supplied value and
- dimensions, optionally with lower bounds other than 1</entry>
+ <entry>renvoit un tableau initialisé avec une valeur et des dimensions
+ fournies, en option avec des limites basses autre que 1</entry>
<entry><literal>array_fill(7, ARRAY[3], ARRAY[2])</literal></entry>
<entry><literal>[2:4]={7,7,7}</literal></entry>
</row>
@@ -9814,7 +9817,7 @@
</literal>
</entry>
<entry><type>int</type></entry>
- <entry>returns the length of the requested array dimension</entry>
+ <entry>renvoit la longueur de la dimension du tableau</entry>
<entry><literal>array_length(array[1,2,3], 1)</literal></entry>
<entry><literal>3</literal></entry>
</row>
@@ -9885,7 +9888,7 @@
</literal>
</entry>
<entry><type>setof anyelement</type></entry>
- <entry>expand an array to a set of rows</entry>
+ <entry>étend un tableau à un ensemble de lignes</entry>
<entry><literal>unnest(ARRAY[1,2])</literal></entry>
<entry><literal>1</literal><para><literal>2</literal></para> (2 rows)</entry>
</row>
@@ -9894,8 +9897,8 @@
</table>
<para>
- See also <xref linkend="functions-aggregate"/> about the aggregate
- function <function>array_agg</function> for use with arrays.
+ Voir aussi <xref linkend="functions-aggregate"/> à propose la fonction
+ d'agrégat <function>array_agg</function> à utiliser avec les tableaux.
</para>
</sect1>
@@ -9945,9 +9948,9 @@
any
</entry>
<entry>
- array of the argument type
+ tableau du type de l'argument
</entry>
- <entry>input values concatenated into an array</entry>
+ <entry>les valeurs entrées concaténées dans un tableau</entry>
</row>
<row>
@@ -10118,7 +10121,8 @@
<entry>
<type>xml</type>
</entry>
- <entry>concatenation of XML values (see also <xref linkend="functions-xml-xmlagg"/>)</entry>
+ <entry>concaténation de valeurs XML (voir aussi <xref
+ linkend="functions-xml-xmlagg"/>)</entry>
</row>
</tbody>
@@ -10129,11 +10133,10 @@
En dehors de <function>count</function>, ces
fonctions renvoient une valeur NULL si aucune ligne n'est sélectionnée. En
particulier, une somme (<function>sum</function>) sur aucune ligne renvoie
- NULL et non zéro, and <function>array_agg</function>
- returns null rather than an empty array when there are no input
- rows. La fonction <function>coalesce</function> peut
- être utilisée pour substituer des zéros or an empty array aux valeurs NULL quand cela est
- nécessaire.
+ NULL et non zéro, et <function>array_agg</function> renvoit NULL plutôt
+ qu'un tableau vide quand il n'y a pas de lignes en entrée. La fonction
+ <function>coalesce</function> peut être utilisée pour substituer des zéros
+ ou un tableau vide aux valeurs NULL quand cela est nécessaire.
</para>
<note>
@@ -10171,23 +10174,23 @@
</note>
<para>
- The aggregate functions <function>array_agg</function>
- and <function>xmlagg</function>, as well as similar user-defined
- aggregate functions, produce meaningfully different result values
- depending on the order of the input values. In the current
- implementation, the order of the input is in principle unspecified.
- Supplying the input values from a sorted subquery
- will usually work, however. For example:
+ Les fonctions d'agrégat <function>array_agg</function> et
+ <function>xmlagg</function>, ainsi que d'autres fonctions similaires d'agrégats
+ définies par l'utilisateur, produisent des valeurs de résultats qui ont un sens
+ différents, dépendant de l'ordre des valeurs en entrée. Dans l'implantation
+ actuelle, l'ordre des entrées est en principe non spécifiée. Fournir les
+ valeurs à partir d'une sous-requête triée fonctionnera généralement. Par
+ exemple :
<screen><![CDATA[
SELECT xmlagg(x) FROM (SELECT x FROM test ORDER BY y DESC) AS tab;
]]></screen>
- But this syntax is not allowed in the SQL standard, and is
- not portable to other database systems. A future version of
- <productname>PostgreSQL</productname> might provide an additional feature to control
- the order in a better-defined way (<literal>xmlagg(expr ORDER BY expr, expr,
- ...)</literal>).
+ Mais cette syntaxe n'est pas autorisée dans le standard SQL et n'est pas
+ portable vers d'autres systèmes de bases de données. Une version future
+ de <productname>PostgreSQL</productname> pourrait fournir une fonctionnalité
+ supplémentaire pour contrôler l'ordre d'une meilleure façon
+ (<literal>xmlagg(expr ORDER BY expr, expr, ...)</literal>).
</para>
<para>
@@ -10549,44 +10552,45 @@
<sect1 id="functions-window">
- <title>Window Functions</title>
+ <title>Fonctions Window</title>
<indexterm zone="functions-window">
- <primary>window function</primary>
- <secondary>built-in</secondary>
+ <primary>fonction window</primary>
+ <secondary>interne</secondary>
</indexterm>
<para>
- <firstterm>Window functions</firstterm> provide the ability to perform
- calculations across sets of rows that are related to the current query
- row. See <xref linkend="tutorial-window"/> for an introduction to this
- feature.
+ Les <firstterm>fonction Window</firstterm> fournissent la possibilité de
+ réaliser des calculs au travers d'ensembles de lignes relatifs à la ligne
+ de la requête en cours. Voir <xref linkend="tutorial-window"/> pour une
+ introduction à cette fonctionnalité.
</para>
<para>
- The built-in window functions are listed in
- <xref linkend="functions-window-table"/>. Note that these functions
- <emphasis>must</emphasis> be invoked using window function syntax; that is an
- <literal>OVER</literal> clause is required.
+ Les fonctions window internes sont listées dans <xref
+ linkend="functions-window-table"/>. Notez que ces fonctions
+ <emphasis>doivent</emphasis> être appelées en utilisant la syntaxe des
+ fonctions window ; autrement dit, une clause
+ <literal>OVER</literal> est requise.
</para>
<para>
- In addition to these functions, any built-in or user-defined aggregate
- function can be used as a window function (see
- <xref linkend="functions-aggregate"/> for a list of the built-in aggregates).
- Aggregate functions act as window functions only when an
-<literal>OVER</literal>
- clause follows the call; otherwise they act as regular aggregates.
+ En plus de ces fonctions, toute fonction d'agrégat interne ou définie par
+ l'utilisateur peut être utilisée comme une fonction window (voir <xref
+ linkend="functions-aggregate"/> pour une liste des agrégats internes).
+ Les fonctions d'agrégat agissent comme des fonctions window seulement
+ quand une clause <literal>OVER</literal> suit l'appel ; sinon
+ elles agissent comme des agrégats standards.
</para>
<table id="functions-window-table">
- <title>General-Purpose Window Functions</title>
+ <title>Fonctions Window généralistes</title>
<tgroup cols="3">
<thead>
<row>
- <entry>Function</entry>
- <entry>Return Type</entry>
+ <entry>Fonction</entry>
+ <entry>Type renvoyé</entry>
<entry>Description</entry>
</row>
</thead>
@@ -10602,7 +10606,8 @@
<entry>
<type>bigint</type>
</entry>
- <entry>number of the current row within its partition, counting from 1</entry>
+ <entry>numéro de la ligne en cours de traitement dans sa partition, en
+ comptant à partir de 1</entry>
</row>
<row>
@@ -10615,8 +10620,8 @@
<entry>
<type>bigint</type>
</entry>
- <entry>rank of the current row with gaps; same as
-<function>row_number</function> of its first peer</entry>
+ <entry>rang de la ligne en cours de traitement, avec des trous ;
+ identique <function>row_number</function> pour le premier pair</entry>
</row>
<row>
@@ -10629,7 +10634,8 @@
<entry>
<type>bigint</type>
</entry>
- <entry>rank of the current row without gaps; this function counts peer groups</entry>
+ <entry>rang de la ligne en cours de traitement, sans trous ; cette
+ fonction compte les groupes de pairs</entry>
</row>
<row>
@@ -10642,7 +10648,8 @@
<entry>
<type>double precision</type>
</entry>
- <entry>relative rank of the current row: (<function>rank</function> - 1) / (total rows - 1)</entry>
+ <entry>rang relatif de la ligne en cours de traitement ;:
+ (<function>rank</function> - 1) / (nombre total de lignes - 1)</entry>
</row>
<row>
@@ -10655,7 +10662,8 @@
<entry>
<type>double precision</type>
</entry>
- <entry>relative rank of the current row: (number of rows preceding or peer with current row) / (total rows)</entry>
+ <entry>rang relatif de la ligne en cours de traitement :
+ (nombre de lignes précédentes, ou pair de la ligne en cours) / (nombre de lignes total)</entry>
</row>
<row>
@@ -10668,8 +10676,8 @@
<entry>
<type>integer</type>
</entry>
- <entry>integer ranging from 1 to the argument value, dividing the
- partition as equally as possible</entry>
+ <entry>entier allant de 1 à la valeur de l'argument, divisant la partition
+ aussi équitablement que possible</entry>
</row>
<row>
@@ -10684,18 +10692,19 @@
</function>
</entry>
<entry>
- <type>same type as <replaceable class="parameter">value</replaceable></type>
+ <type>même type que <replaceable class="parameter">value</replaceable></type>
</entry>
<entry>
- returns <replaceable class="parameter">value</replaceable> evaluated at
- the row that is <replaceable class="parameter">offset</replaceable>
- rows before the current row within the partition; if there is no such
- row, instead return <replaceable class="parameter">default</replaceable>.
- Both <replaceable class="parameter">offset</replaceable> and
- <replaceable class="parameter">default</replaceable> are evaluated
- with respect to the current row. If omitted,
- <replaceable class="parameter">offset</replaceable> defaults to 1 and
- <replaceable class="parameter">default</replaceable> to null
+ renvoit <replaceable class="parameter">value</replaceable> évalué à la
+ ligne qui est <replaceable class="parameter">offset</replaceable> lignes
+ avant la ligne actuelle à l'intérieur de la partition ; s'il n'y a
+ pas de ligne, renvoit à la place <replaceable
+ class="parameter">default</replaceable>. <replaceable
+ class="parameter">offset</replaceable> et <replaceable
+ class="parameter">default</replaceable> sont évalués par rapport à la
+ ligne en cours. Si omis, <replaceable
+ class="parameter">offset</replaceable> a comme valeur par défaut 1 et
+ <replaceable class="parameter">default</replaceable> est NULL
</entry>
</row>
@@ -10714,15 +10723,16 @@
<type>same type as <replaceable class="parameter">value</replaceable></type>
</entry>
<entry>
- returns <replaceable class="parameter">value</replaceable> evaluated at
- the row that is <replaceable class="parameter">offset</replaceable>
- rows after the current row within the partition; if there is no such
- row, instead return <replaceable class="parameter">default</replaceable>.
- Both <replaceable class="parameter">offset</replaceable> and
- <replaceable class="parameter">default</replaceable> are evaluated
- with respect to the current row. If omitted,
- <replaceable class="parameter">offset</replaceable> defaults to 1 and
- <replaceable class="parameter">default</replaceable> to null
+ renvoit <replaceable class="parameter">value</replaceable> évalué à la
+ ligne qui est <replaceable class="parameter">offset</replaceable> lignes
+ après la ligne actuelle à l'intérieur de la partition ; s'il n'y a
+ pas de ligne, renvoit à la place <replaceable
+ class="parameter">default</replaceable>. <replaceable
+ class="parameter">offset</replaceable> et <replaceable
+ class="parameter">default</replaceable> sont évalués par rapport à la
+ ligne en cours. Si omis, <replaceable
+ class="parameter">offset</replaceable> a comme valeur par défaut 1 et
+ <replaceable class="parameter">default</replaceable> est NULL
</entry>
</row>
@@ -10735,11 +10745,11 @@
class="parameter">value</replaceable> <type>any</type>)</function>
</entry>
<entry>
- <type>same type as <replaceable class="parameter">value</replaceable></type>
+ <type>même type que <replaceable class="parameter">value</replaceable></type>
</entry>
<entry>
- returns <replaceable class="parameter">value</replaceable> evaluated
- at the row that is the first row of the window frame
+ renvoit <replaceable class="parameter">value</replaceable> évaluée à la
+ ligne qui est la première ligne du frame window
</entry>
</row>
@@ -10751,11 +10761,11 @@
<function>last_value(<replaceable class="parameter">value</replaceable> <type>any</type>)</function>
</entry>
<entry>
- <type>same type as <replaceable class="parameter">value</replaceable></type>
+ <type>même type que <replaceable class="parameter">value</replaceable></type>
</entry>
<entry>
- returns <replaceable class="parameter">value</replaceable> evaluated
- at the row that is the last row of the window frame
+ renvoit <replaceable class="parameter">value</replaceable> évaluée à la
+ ligne qui est la dernière ligne du frame window
</entry>
</row>
@@ -10769,12 +10779,13 @@
</function>
</entry>
<entry>
- <type>same type as <replaceable class="parameter">value</replaceable></type>
+ <type>même type que <replaceable class="parameter">value</replaceable></type>
</entry>
<entry>
- returns <replaceable class="parameter">value</replaceable> evaluated
- at the row that is the <replaceable class="parameter">nth</replaceable>
- row of the window frame (counting from 1); null if no such row
+ renvoit <replaceable class="parameter">value</replaceable> évaluée à la
+ ligne qui est la<replaceable class="parameter">nth</replaceable>-ième
+ ligne de la frame window (en comptant à partir de 1) ; NULL si
+ aucune ligne
</entry>
</row>
</tbody>
@@ -10782,52 +10793,53 @@
</table>
<para>
- All of the functions listed in
- <xref linkend="functions-window-table"/> depend on the sort ordering
- specified by the <literal>ORDER BY</literal> clause of the associated window
- definition. Rows that are not distinct in the <literal>ORDER BY</literal>
- ordering are said to be <firstterm>peers</firstterm>; the four ranking functions
- are defined so that they give the same answer for any two peer rows.
+ Toutes les fonctions listées dans <xref
+ linkend="functions-window-table"/> dépendent du tri indiqué par la clause
+ <literal>ORDER BY</literal> de la définition window associée. Les lignes qui
+ ne sont pas distinctes dans le tri <literal>ORDER BY</literal> sont des
+ <firstterm>pairs</firstterm> ; les quatre fonctions de rang sont
+ définies de ce façon à ce qu'elles donnent la même réponse pour toutes les
+ lignes pairs.
</para>
<para>
- Note that <function>first_value</function>, <function>last_value</function>, and
- <function>nth_value</function> consider only the rows within the <quote>window
- frame</quote>, which by default contains the rows from the start of the
- partition through the last peer of the current row. This is
- likely to give unhelpful results for <function>nth_value</function> and
- particularly <function>last_value</function>. You can redefine the frame as
- being the whole partition by adding <literal>ROWS BETWEEN UNBOUNDED
- PRECEDING AND UNBOUNDED FOLLOWING</literal> to the <literal>OVER</literal> clause.
- See <xref linkend="syntax-window-functions"/> for more information.
+ Notez que <function>première_valeur</function>,
+ <function>dernière_valeur</function> et <function>nieme_valeur</function>
+ considèrent seulement les lignes à l'intérieur du <quote>frame window</quote>
+ qui contient par défaut les lignes du début de la partition jusqu'au dernier
+ pair de la ligne en cours. Cela risque de données des résultats inintéressants
+ pour <function>nieme_valeur</function> et tout particulièrement
+ <function>derniere_valeur</function>. Vous pouvez redéfinir le frame comme
+ étant la partition complète en ajoutant <literal>ROWS BETWEEN UNBOUNDED
+ PRECEDING AND UNBOUNDED FOLLOWING</literal> à la clause <literal>OVER</literal>.
+ Voir <xref linkend="syntax-window-functions"/> pour plus d'informations.
</para>
<para>
- When an aggregate function is used as a window function, it aggregates
- over the rows within the current row's window frame. To obtain
- aggregation over the whole partition, omit <literal>ORDER BY</literal> or use
- <literal>ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING</literal>.
- An aggregate used with <literal>ORDER BY</literal> and the default window frame
- definition produces a <quote>running sum</quote> type of behavior, which may or
- may not be what's wanted.
+ Quand une fonction d'agrégat est utilisée comme fonction window, il aggrège
+ les lignes sur le frame window de la ligne en cours de traitement. Pour
+ obtenir un agrégat sur la partition complète, omettez <literal>ORDER
+ BY</literal> ou utilisez <literal>ROWS BETWEEN UNBOUNDED PRECEDING AND
+ UNBOUNDED FOLLOWING</literal>. Un agrégat utilisé avec <literal>ORDER
+ BY</literal> et la définition de la frame window par défaut produit un
+ comportement de type <quote>somme en cours d'exécution</quote>, qui pourrait
+ ou ne pas être souhaité.
</para>
<note>
<para>
- The SQL standard defines a <literal>RESPECT NULLS</literal> or
- <literal>IGNORE NULLS</literal> option for <function>lead</function>,
- <function>lag</function>,
- <function>first_value</function>, <function>last_value</function>, and
- <function>nth_value</function>. This is not implemented in
- <productname>PostgreSQL</productname>: the behavior is always the
- same as the standard's default, namely <literal>RESPECT NULLS</literal>.
- Likewise, the standard's <literal>FROM FIRST</literal> or <literal>FROM
- LAST</literal>
- option for <function>nth_value</function> is not implemented: only the
- default <literal>FROM FIRST</literal> behavior is supported. (You can achieve
- the result of <literal>FROM LAST</literal> by reversing the <literal>ORDER
-BY</literal>
- ordering.)
+ Le standard SQL définit une option <literal>RESPECT NULLS</literal> ou
+ <literal>IGNORE NULLS</literal> pour <function>lead</function>,
+ <function>lag</function>, <function>first_value</function>,
+ <function>last_value</function> et <function>nth_value</function>.
+ Ceci n'est pas implanté dans <productname>PostgreSQL</productname> :
+ le comportement est toujours le même que dans le comportement par défaut
+ du standard, nommément <literal>RESPECT NULLS</literal>. De la même façon,
+ les options <literal>FROM FIRST</literal> ou <literal>FROM LAST</literal>
+ pour <function>nth_value</function> ne sont pas implantées : seul le
+ comportement <literal>FROM FIRST</literal> est supporté par défaut. (Vous
+ pouvez obtenir le résultat d'un <literal>FROM LAST</literal> en inversant
+ l'ordre du <literal>ORDER BY</literal>.)
</para>
</note>
@@ -11426,15 +11438,16 @@
<note>
<para>
- The SQL specification requires row-wise comparison to return NULL if the
- result depends on comparing two NULL values or a NULL and a non-NULL.
- <productname>PostgreSQL</productname> does this only when comparing the
- results of two row constructors or comparing a row constructor to the
- output of a subquery (as in <xref linkend="functions-subquery"/>).
- In other contexts where two composite-type values are compared, two
- NULL field values are considered equal, and a NULL is considered larger
- than a non-NULL. This is necessary in order to have consistent sorting
- and indexing behavior for composite types.
+ Le standard SQL requiert qu'une comparaison d'une ligne complète renvoit
+ NULL si le résultat dépend de la comparaison de deux valeurs NULL ou d'une
+ valeur NULL et d'une valeur non NULL. <productname>PostgreSQL</productname>
+ le fait en comparant le résultat de deux constructeurs de lignes ou en
+ comparant un constructeur de ligne avec le résultat d'une sous-requête
+ (comme dans <xref linkend="functions-subquery"/>). Dans d'autres contextes
+ où deux valeurs de type composite sont comparées, deux champs NULL sont
+ considérés égaux, et un champ NULL est considéré plus grand qu'un champ
+ non NULL. Ceci est nécessaire pour voir un comportement de tri et
+ d'indexage cohérent pour les types composites.
</para>
</note>
@@ -11497,12 +11510,13 @@
</row>
<row>
- <entry><literal><function>generate_series</function>(<parameter>start</parameter>, <parameter>stop</parameter>, <parameter>step</parameter> <type>interval</type>)</literal></entry>
+ <entry><literal><function>generate_series</function>(<parameter>début</parameter>, <parameter>fin</parameter>, <parameter>pas</parameter> <type>interval</type>)</literal></entry>
<entry><type>timestamp</type> or <type>timestamp with time zone</type></entry>
- <entry><type>setof timestamp</type> or <type>setof timestamp with time zone</type> (same as argument type)</entry>
+ <entry><type>setof timestamp</type> ou <type>setof timestamp with time zone</type> (identique au type de l'argument)</entry>
<entry>
- Generate a series of values, from <parameter>start</parameter> to <parameter>stop</parameter>
- with a step size of <parameter>step</parameter>
+ Génère une série de valeurs, allant de <parameter>start</parameter> à
+ <parameter>stop</parameter> avec une taille pour chaque étape de
+ <parameter>pas</parameter>
</entry>
</row>
@@ -11544,7 +11558,7 @@
-----------------
(0 rows)
--- this example relies on the date-plus-integer operator
+-- cet exemple se base sur l'opérateur date-plus-entier
select current_date + s.a as dates from generate_series(0,14,7) as s(a);
dates
------------
@@ -11570,12 +11584,12 @@
</para>
<table id="functions-srf-subscripts">
- <title>Subscript Generating Functions</title>
+ <title>Fonctions de génération d'indices</title>
<tgroup cols="3">
<thead>
<row>
- <entry>Function</entry>
- <entry>Return Type</entry>
+ <entry>Nom</entry>
+ <entry>Type de retour</entry>
<entry>Description</entry>
</row>
</thead>
@@ -11585,7 +11599,7 @@
<entry><literal><function>generate_subscripts</function>(<parameter>array anyarray</parameter>, <parameter>dim int</parameter>)</literal></entry>
<entry><type>setof int</type></entry>
<entry>
- Generate a series comprising the given array's subscripts.
+ Génère une série comprenant les indices du tableau donné.
</entry>
</row>
@@ -11593,9 +11607,9 @@
<entry><literal><function>generate_subscripts</function>(<parameter>array anyarray</parameter>, <parameter>dim int</parameter>, <parameter>reverse boolean</parameter>)</literal></entry>
<entry><type>setof int</type></entry>
<entry>
- Generate a series comprising the given array's subscripts. When
- <parameter>reverse</parameter> is true, the series is returned in
- reverse order.
+ Génère une série comprenant les indices du tableau donné. Quand
+ <parameter>reverse</parameter> vaut true, la série est renvoyé en ordre
+ inverse.
</entry>
</row>
@@ -11608,14 +11622,14 @@
</indexterm>
<para>
- <function>generate_subscripts</function> is a convenience function that generates
- the set of valid subscripts for the specified dimension of the given
- array.
- Zero rows are returned for arrays that do not have the requested dimension,
- or for NULL arrays (but valid subscripts are returned for NULL array
- elements). Some examples follow:
+ <function>generate_subscripts</function> est une fonction qui génère un
+ ensemble d'indices valides pour la dimension indiquée du tableau
+ fourni.
+ Aucune ligne n'est renvoyée pour les tableaux qui n'ont pas la dimension
+ requise ou pour les tableaux NULL (mais les indices valides sont renvoyées
+ pour les éléments d'un tableau NULL). Quelques exemples suivent :
<programlisting>
--- basic usage
+-- usage basique
select generate_subscripts('{NULL,1,NULL,2}'::int[], 1) as s;
s
---
@@ -11644,7 +11658,7 @@
{100,200} | 2 | 200
(4 rows)
--- unnest a 2D array
+-- tableau 2D
create or replace function unnest2(anyarray)
returns setof anyelement as $$
select $1[i][j]
@@ -11695,11 +11709,12 @@
</thead>
<tbody>
- <row>
- <entry><literal><function>current_catalog</function></literal></entry>
- <entry><type>name</type></entry>
- <entry>name of current database (called <quote>catalog</quote> in the SQL standard)</entry>
- </row>
+ <row>
+ <entry><literal><function>current_catalog</function></literal></entry>
+ <entry><type>name</type></entry>
+ <entry>nom de la base de données en cours (appelée
+ <quote>catalog</quote> dans le standard SQL)</entry>
+ </row>
<row>
<entry><literal><function>current_database</function>()</literal></entry>
@@ -11726,20 +11741,21 @@
<entry>nom d'utilisateur du contexte d'exécution courant</entry>
</row>
- <row>
- <entry><literal><function>current_query</function></literal></entry>
- <entry><type>text</type></entry>
- <entry>text of the currently executing query, as submitted
- by the client (might contain more than one statement)</entry>
- </row>
+ <row>
+ <entry><literal><function>current_query</function></literal></entry>
+ <entry><type>text</type></entry>
+ <entry>texte la requête en cours d'exécution, tel qu'elle a été
+ soumise par le client (pourrait contenir plus d'une instruction)
+ </entry>
+ </row>
- <row>
- <!-- See also the entry for this in monitoring.sgml -->
- <entry><literal><function>pg_backend_pid</function>()</literal></entry>
- <entry><type>int</type></entry>
- <entry>
- Process ID of the server process attached to the current session
- </entry>
+ <row>
+ <!-- See also the entry for this in monitoring.sgml -->
+ <entry><literal><function>pg_backend_pid</function>()</literal></entry>
+ <entry><type>int</type></entry>
+ <entry>Identifiant du processus serveur attaché à la session en
+ cours
+ </entry>
</row>
<row>
@@ -11784,11 +11800,11 @@
<entry>heure de démarrage du serveur</entry>
</row>
- <row>
- <entry><literal><function>pg_conf_load_time</function>()</literal></entry>
- <entry><type>timestamp with time zone</type></entry>
- <entry>configuration load time</entry>
- </row>
+ <row>
+ <entry><literal><function>pg_conf_load_time</function>()</literal></entry>
+ <entry><type>timestamp with time zone</type></entry>
+ <entry>heure de chargement de la configuration</entry>
+ </row>
<row>
<entry><literal><function>session_user</function></literal></entry>
@@ -11862,12 +11878,11 @@
<note>
<para>
<function>current_catalog</function>, <function>current_schema</function>,
- <function>current_user</function>, <function>session_user</function>,
- et <function>user</function>
- ont un statut syntaxique spécial en
+ <function>current_user</function>, <function>session_user</function>,
+ et <function>user</function> ont un statut syntaxique spécial en
<acronym>SQL</acronym> : ils doivent être appelés sans
- parenthèses à droite (optional in PostgreSQL in the case
- of <function>current_schema</function>).
+ parenthèses à droite (optionnel avec PostgreSQL dans le cas de
+ <function>current_schema</function>).
</para>
</note>
@@ -11949,13 +11964,13 @@
</indexterm>
<para>
- <function>pg_conf_load_time</function> returns the
- <type>timestamp with time zone</type> when the
- server configuration files were last loaded.
- (If the current session was alive at the time, this will be the time
- when the session itself re-read the configuration files, so the
- reading will vary a little in different sessions. Otherwise it is
- the time when the postmaster process re-read the configuration files.)
+ <function>pg_conf_load_time</function> renvoit <type>timestamp with time
+ zone</type> indiquant à quel moment les fichiers de configuration du
+ serveur ont été chargés. (Si la session en cours était déjà là à ce
+ moment, ce sera le moment où la sessions elle-même a relu les fichiers
+ de configurations. Cela veut dire que ce que renvoit cette fonction
+ peut varier un peu suivant les sessions. Sinon, c'est le temps où le
+ processus maître a relu les fichiers de configuration.)
</para>
<indexterm>
@@ -11999,14 +12014,16 @@
<parameter>privilege</parameter>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>does user have privilege for any column of table</entry>
+ <entry>l'utilisateur a-t-il un droit sur une des colonnes de cette table
+ </entry>
</row>
<row>
<entry><literal><function>has_any_column_privilege</function>(<parameter>table</parameter>,
<parameter>privilege</parameter>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>does current user have privilege for any column of table</entry>
+ <entry>l'utilisateur actuel a-t-il un droit sur une des colonnes de
+ cette table</entry>
</row>
<row>
<entry><literal><function>has_column_privilege</function>(<parameter>user</parameter>,
@@ -12015,7 +12032,7 @@
<parameter>privilege</parameter>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>does user have privilege for column</entry>
+ <entry>l'utilisateur a-t-il un droit sur la colonne</entry>
</row>
<row>
<entry><literal><function>has_column_privilege</function>(<parameter>table</parameter>,
@@ -12023,7 +12040,7 @@
<parameter>privilege</parameter>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>does current user have privilege for column</entry>
+ <entry>l'utilisateur actuel a-t-il un droit sur la colonne</entry>
</row>
<row>
<entry><literal><function>has_database_privilege</function>
@@ -12051,14 +12068,16 @@
<parameter>privilege</parameter>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>does user have privilege for foreign-data wrapper</entry>
+ <entry>l'utilisateur a-t-il un droit sur ce wrapper de données distantes
+ </entry>
</row>
<row>
<entry><literal><function>has_foreign_data_wrapper_privilege</function>(<parameter>fdw</parameter>,
<parameter>privilege</parameter>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>does current user have privilege for foreign-data wrapper</entry>
+ <entry>l'utilisateur actuel a-t-il un droit sur ce wrapper de données
+ distantes</entry>
</row>
<row>
<entry><literal><function>has_function_privilege</function>
@@ -12124,14 +12143,14 @@
<parameter>privilege</parameter>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>does user have privilege for foreign server</entry>
+ <entry>l'utilisateur a-t-il un droit sur ce serveur distant</entry>
</row>
<row>
<entry><literal><function>has_server_privilege</function>(<parameter>server</parameter>,
<parameter>privilege</parameter>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>does current user have privilege for foreign server</entry>
+ <entry>l'utilisateur actuel a-t-il un droit sur ce serveur distant</entry>
</row>
<row>
<entry><literal><function>has_table_privilege</function>(<parameter>utilisateur</parameter>,
@@ -12239,15 +12258,15 @@
indiqués sous la forme d'une chaîne de caractères, sont :
<literal>SELECT</literal>, <literal>INSERT</literal>,
<literal>UPDATE</literal>, <literal>DELETE</literal>,
- <literal>TRUNCATE</literal>,
- <literal>REFERENCES</literal>, or <literal>TRIGGER</literal>. Optionally,
- <literal>WITH GRANT OPTION</literal> can be added to a privilege type to test
- whether the privilege is held with grant option. Also, multiple privilege
- types can be listed separated by commas, in which case the result will
- be <literal>true</literal> if any of the listed privileges is held.
- (Case of the privilege string is not significant, and extra whitespace
- is allowed between but not within privilege names.)
- Some examples:
+ <literal>TRUNCATE</literal>, <literal>REFERENCES</literal> ou
+ <literal>TRIGGER</literal>. En option, <literal>WITH GRANT OPTION</literal>
+ peut être ajouté à un type de droit pour tester si le droit est obtenu
+ avec l'option « grant ». De plus, plusieurs types de droit peuvent être
+ listés, séparés par des virgules, auquel cas le résultat sera
+ <literal>true</literal> si un des droits listés est obtenu. (la casse des
+ droits n'a pas d'importance et les espaces blancs supplémentaires sont
+ autorisés entre mais pas dans le nom des droits.)
+ Certains exemples :
<programlisting>
SELECT has_table_privilege('myschema.mytable', 'select');
SELECT has_table_privilege('joe', 'mytable', 'INSERT, SELECT WITH GRANT OPTION');
@@ -12255,94 +12274,85 @@
</para>
<para>
- <function>has_any_column_privilege</function> checks whether a user can
- access any column of a table in a particular way. The possibilities for
- its arguments are the same as for <function>has_table_privilege</function>,
- except that the desired access privilege type must evaluate to some
- combination of
- <literal>SELECT</literal>,
- <literal>INSERT</literal>,
- <literal>UPDATE</literal>, or
- <literal>REFERENCES</literal>. Note that having any of these privileges
- at the table level implicitly grants it for each column of the table,
- so <function>has_any_column_privilege</function> will always return
- <literal>true</literal> if <function>has_table_privilege</function> does for the same
- arguments. But <function>has_any_column_privilege</function> also succeeds if
- there is a column-level grant of the privilege for at least one column.
+ <function>has_any_column_privilege</function> vérifie si un utilisateur
+ peut accéder à une colonne d'une table d'une façon particulière. Les
+ possibilités pour que ces arguments correspondent à ceux de
+ <function>has_table_privilege</function>, sauf que le type de droit d'accès
+ désiré doit être évalué à une combinaison de
+ <literal>SELECT</literal>, <literal>INSERT</literal>,
+ <literal>UPDATE</literal> ou <literal>REFERENCES</literal>. Notez qu'avoir
+ un droit au niveau de la table le donne implicitement pour chaque colonne de
+ la table, donc <function>has_any_column_privilege</function> renverra
+ toujours <literal>true</literal> si <function>has_table_privilege</function>
+ le fait pour les mêmes arguments. Mais
+ <function>has_any_column_privilege</function> réussit aussi s'il y a un droit
+ « grant » sur une colonne pour ce droit.
</para>
<para>
- <function>has_column_privilege</function> checks whether a user
- can access a column in a particular way. The possibilities for its
- arguments are analogous to <function>has_table_privilege</function>,
- with the addition that the column can be specified either by name
- or attribute number.
- The desired access privilege type must evaluate to some combination of
- <literal>SELECT</literal>,
- <literal>INSERT</literal>,
- <literal>UPDATE</literal>, or
- <literal>REFERENCES</literal>. Note that having any of these privileges
- at the table level implicitly grants it for each column of the table.
+ <function>has_column_privilege</function> vérifie si un utilisateur peut
+ accéder à une colonne d'une façon particulière. Les possibilités pour
+ ses arguments sont analogues à <function>has_table_privilege</function>,
+ avec un supplément : la colonne doit être indiquée soit par nom soit
+ par numéro d'attribut. Le type de droit d'accès désiré doit être une
+ combinaison de <literal>SELECT</literal>, <literal>INSERT</literal>,
+ <literal>UPDATE</literal> ou <literal>REFERENCES</literal>. Notez qu'avoir
+ un de ces droits au niveau table les donne implicitement pour chaque
+ colonne de la table.
</para>
<para>
- <function>has_database_privilege</function> checks whether a user
- can access a database in a particular way. The possibilities for its
- arguments are analogous to <function>has_table_privilege</function>.
- The desired access privilege type must evaluate to some combination of
- <literal>CREATE</literal>,
- <literal>CONNECT</literal>,
- <literal>TEMPORARY</literal>, or
- <literal>TEMP</literal> (which is equivalent to
- <literal>TEMPORARY</literal>).
+ <function>has_database_privilege</function> vérifie si un utilisateur peut
+ accéder à une base de données d'une façon particulière. Les possibilités
+ pour ses arguments sont analogues à <function>has_table_privilege</function>.
+ Le type de droit d'accès désiré doit être une combinaison de
+ <literal>CREATE</literal>, <literal>CONNECT</literal>,
+ <literal>TEMPORARY</literal> ou <literal>TEMP</literal> (qui est équivalent
+ à <literal>TEMPORARY</literal>).
</para>
<para>
- <function>has_function_privilege</function> checks whether a user
- can access a function in a particular way. The possibilities for its
- arguments are analogous to <function>has_table_privilege</function>.
- When specifying a function by a text string rather than by OID,
- the allowed input is the same as for the <type>regprocedure</type> data type
- (see <xref linkend="datatype-oid"/>).
- The desired access privilege type must evaluate to
- <literal>EXECUTE</literal>.
- An example is:
+ <function>has_function_privilege</function> vérifie si un utilisateur peut
+ accéder à une fonction d'une façon particulière. Les possibilités pour ses
+ arguments sont analogues à <function>has_table_privilege</function>. Lors
+ de la spécification d'une fonction par une chaîne texte plutôt que par un
+ OID, l'entrée autorisée est la même que pour le type de données
+ <type>regprocedure</type> (voir <xref linkend="datatype-oid"/>). Le type
+ de droit d'accès désiré doit être <literal>EXECUTE</literal>.
+ Voici un exemple :
<programlisting>
SELECT has_function_privilege('joeuser', 'myfunc(int, text)', 'execute');
</programlisting>
</para>
<para>
- <function>has_foreign_data_wrapper_privilege</function> checks whether a user
- can access a foreign-data wrapper in a particular way. The possibilities for its
- arguments are analogous to <function>has_table_privilege</function>.
- The desired access privilege type must evaluate to
- <literal>USAGE</literal>.
+ <function>has_foreign_data_wrapper_privilege</function> vérifie si un
+ utilisateur peut accéder à un wrapper de données distantes d'une façon
+ particulière. Les possibilités pour ses arguments sont analogues à
+ <function>has_table_privilege</function>. Le type de droit d'accès désiré
+ doit être <literal>USAGE</literal>.
</para>
<para>
- <function>has_language_privilege</function> checks whether a user
- can access a procedural language in a particular way. The possibilities
- for its arguments are analogous to <function>has_table_privilege</function>.
- The desired access privilege type must evaluate to
- <literal>USAGE</literal>.
+ <function>has_language_privilege</function> vérifie si un utilisateur peut
+ accéder à un langage de procédure d'une façon particulière. Les possibilités
+ pour ses arguments sont analogues à <function>has_table_privilege</function>.
+ Le type de droit d'accès désiré doit être <literal>USAGE</literal>.
</para>
<para>
- <function>has_schema_privilege</function> checks whether a user
- can access a schema in a particular way. The possibilities for its
- arguments are analogous to <function>has_table_privilege</function>.
- The desired access privilege type must evaluate to some combination of
- <literal>CREATE</literal> or
- <literal>USAGE</literal>.
+ <function>has_schema_privilege</function> vérifie si un utilisateur peut
+ accéder à un schéma d'une façon particulière. Les possibilités pour ses
+ arguments sont analogues à <function>has_table_privilege</function>. Le
+ type de droits d'accès désiré doit être une combinaison de
+ <literal>CREATE</literal> et <literal>USAGE</literal>.
</para>
<para>
- <function>has_server_privilege</function> checks whether a user
- can access a foreign server in a particular way. The possibilities for its
- arguments are analogous to <function>has_table_privilege</function>.
- The desired access privilege type must evaluate to
- <literal>USAGE</literal>.
+ <function>has_server_privilege</function> vérifie si un utilisateur peut
+ accéder à un serveur distant d'une façon particulière. Les possibilités
+ pour ses arguments sont analogues à <function>has_table_privilege</function>.
+ Le type de droit d'accès désiré doit être <literal>USAGE</literal>.
</para>
<para>
@@ -12602,7 +12612,7 @@
<row>
<entry><literal><function>pg_get_keywords</function>()</literal></entry>
<entry><type>setof record</type></entry>
- <entry>get list of SQL keywords and their categories</entry>
+ <entry>obtient une liste des mots clés SQL et leurs catégories</entry>
</row>
<row>
<entry><literal><function>pg_get_constraintdef</function>(<parameter>constraint_oid</parameter>)</literal></entry>
@@ -12629,22 +12639,24 @@
<row>
<entry><literal><function>pg_get_functiondef</function>(<parameter>func_oid</parameter>)</literal></entry>
<entry><type>text</type></entry>
- <entry>get definition of a function</entry>
+ <entry>obtient une définition de la fonction</entry>
</row>
<row>
<entry><literal><function>pg_get_function_arguments</function>(<parameter>func_oid</parameter>)</literal></entry>
<entry><type>text</type></entry>
- <entry>get argument list of function's definition (with default values)</entry>
+ <entry>obtient une définition de la liste des arguments de la fonction
+ (avec les valeurs par défaut)</entry>
</row>
<row>
<entry><literal><function>pg_get_function_identity_arguments</function>(<parameter>func_oid</parameter>)</literal></entry>
<entry><type>text</type></entry>
- <entry>get argument list to identify a function (without default values)</entry>
+ <entry>obtient une définition de la liste des arguments de la fonction
+ (sans valeurs par défaut)</entry>
</row>
<row>
<entry><literal><function>pg_get_function_result</function>(<parameter>func_oid</parameter>)</literal></entry>
<entry><type>text</type></entry>
- <entry>get <literal>RETURNS</literal> clause for function</entry>
+ <entry>obtient la clause <literal>RETURNS</literal> pour la fonction</entry>
</row>
<row>
<entry><literal><function>pg_get_indexdef</function>(<parameter>index_oid</parameter>)</literal></entry>
@@ -12718,7 +12730,7 @@
<row>
<entry><literal><function>pg_typeof</function>(<parameter>any</parameter>)</literal></entry>
<entry><type>regtype</type></entry>
- <entry>get the data type of any value</entry>
+ <entry>obtient le type de données de toute valeur</entry>
</row>
</tbody>
</tgroup>
@@ -12732,14 +12744,15 @@
</para>
<para>
- <function>pg_get_keywords</function> returns a set of records describing
- the SQL keywords recognized by the server. The
- <structfield>word</structfield> column
- contains the keyword. The <structfield>catcode</structfield> column contains a
- category code: <literal>U</literal> for unreserved, <literal>C</literal> for column name,
- <literal>T</literal> for type or function name, or <literal>R</literal> for reserved.
- The <structfield>catdesc</structfield> column contains a possibly-localized string
- describing the category.
+ <function>pg_get_keywords</function> renvoit un ensemble d'enregistrements
+ décrivant les mots clés SQL reconnus par le serveur. La colonne
+ <structfield>word</structfield> contient le mot clé. La colonne
+ <structfield>catcode</structfield> contient un code de catégorie :
+ <literal>U</literal> pour non réservé, <literal>C</literal> pour nom de
+ colonne, <literal>T</literal> pour nom d'un type ou d'une fonction et
+ <literal>R</literal> pour réservé. La colonne
+ <structfield>catdesc</structfield> contient une chaîne pouvant être
+ traduite décrivant la catégorie.
</para>
<para>
@@ -12764,17 +12777,17 @@
</para>
<para>
- <function>pg_get_functiondef</function> returns a complete
- <command>CREATE OR REPLACE FUNCTION</command> statement for a function.
- <function>pg_get_function_arguments</function> returns the argument list
- of a function, in the form it would need to appear in within
+ <function>pg_get_functiondef</function> renvoit une instruction
+ <command>CREATE OR REPLACE FUNCTION</command> complète pour une fonction.
+ <function>pg_get_function_arguments</function> renvoit une liste
+ des arguments d'un fonction, de la façon dont elle apparaîtrait dans
<command>CREATE FUNCTION</command>.
- <function>pg_get_function_result</function> similarly returns the
- appropriate <literal>RETURNS</literal> clause for the function.
- <function>pg_get_function_identity_arguments</function> returns the
- argument list necessary to identify a function, in the form it
- would need to appear in within <command>ALTER FUNCTION</command>, for
- instance. This form omits default values.
+ <function>pg_get_function_result</function> renvoit de façon similaire
+ la clause <literal>RETURNS</literal> appropriée pour la fonction.
+ <function>pg_get_function_identity_arguments</function> renvoit la liste
+ d'arguments nécessaire pour identifier une fonction, dans la forme qu'elle
+ devrait avoir pour faire partie d'un <command>ALTER FUNCTION</command>, par
+ exemple. Cette forme omet les valeurs par défaut.
</para>
<para>
@@ -12814,12 +12827,13 @@
</para>
<para>
- <function>pg_typeof</function> returns the OID of the data type of the
- value that is passed to it. This can be helpful for troubleshooting or
- dynamically constructing SQL queries. The function is declared as
- returning <type>regtype</type>, which is an OID alias type (see
- <xref linkend="datatype-oid"/>); this means that it is the same as an
- OID for comparison purposes but displays as a type name. For example:
+ <function>pg_typeof</function> renvoit l'OID du type de données de la valeur
+ qui lui est passé. Ceci est utile pour dépanner ou pour construire
+ dynamiquement des requêtes SQL. La fonction est déclarée comme renvoyant
+ <type>regtype</type>, qui est une type d'alias d'OID (voir
+ <xref linkend="datatype-oid"/>) ; cela signifie que c'est la même chose
+ qu'un OID pour un bit de comparaison mais que cela s'affiche comme un nom de
+ type. Par exemple :
<programlisting>
SELECT pg_typeof(33);
@@ -12994,7 +13008,8 @@
<row>
<entry><literal><function>txid_visible_in_snapshot</function>(<parameter>bigint</parameter>, <parameter>txid_snapshot</parameter>)</literal></entry>
<entry><type>boolean</type></entry>
- <entry>l'ID de transaction est-il visible dans l'instantané ? (do not use with subtransaction ids)</entry>
+ <entry>l'ID de transaction est-il visible dans l'instantané ?
+ (ne pas utiliser les identifiants de sous-transactions)</entry>
</row>
</tbody>
</tgroup>
@@ -13042,14 +13057,14 @@
<row>
<entry><type>xip_list</type></entry>
<entry>
- Active txids at the time of the snapshot. The list
- includes only those active txids between <literal>xmin</literal>
- and <literal>xmax</literal>; there might be active txids higher
- than xmax. A txid that is <literal>xmin <= txid <
- xmax</literal> and not in this list was already completed
- at the time of the snapshot, and thus either visible or
- dead according to its commit status. The list does not
- include txids of subtransactions.
+ Active les identifiants de transactions (txids) au moment de la prise
+ de l'image. La liste inclut seulement les identifiants actifs entre
+ <literal>xmin</literal> et <literal>xmax</literal> ; il pourrait
+ y avoir des identifiants plus gros que xmax. Un identifiant qui est
+ <literal>xmin <= txid < xmax</literal> et qui n'est pas dans cette
+ liste est déjà terminé au moment de la prise de l'image, et du coup est
+ soit visible soit mort suivant son statut de validation. La liste
+ n'inclut pas les identifiants de transactions des sous-transactions.
</entry>
</row>
@@ -13207,7 +13222,7 @@
<literal><function>pg_terminate_backend</function>(<parameter>pid</parameter> <type>int</type>)</literal>
</entry>
<entry><type>boolean</type></entry>
- <entry>Terminate a backend</entry>
+ <entry>Termine une processus serveur</entry>
</row>
<row>
<entry>
@@ -13364,22 +13379,23 @@
</table>
<para>
- <function>pg_start_backup</function> accepte un paramètre texte,
- label utilisateur de la sauvegarde (typiquement, le nom
- du fichier d'enregistrement de la sauvegarde). La fonction écrit un
- fichier de label dans le répertoire de données du cluster, performs a checkpoint, et renvoie
- la position du début de la sauvegarde dans le journal de transactions
- au format texte. Ce résultat ne nécessite pas qu'on s'y intéresse, mais
- il est fourni dans cette éventualité.
+ <function>pg_start_backup</function> accepte un paramètre texte, label
+ utilisateur de la sauvegarde (typiquement, le nom du fichier
+ d'enregistrement de la sauvegarde). La fonction écrit un fichier de
+ label dans le répertoire de données du cluster, réalise un point de
+ retournement, et renvoie la position du début de la sauvegarde dans le
+ journal de transactions au format texte. Ce résultat ne nécessite pas
+ qu'on s'y intéresse, mais il est fourni dans cette éventualité.
<programlisting>postgres=# select pg_start_backup('le_label_ici');
pg_start_backup
-----------------
0/D4445B8
(1 row)</programlisting>
- There is an optional boolean second parameter. If <literal>true</literal>,
- it specifies executing <function>pg_start_backup</function> as quickly as
- possible. This forces an immediate checkpoint which will cause a
- spike in I/O operations, slowing any concurrently executing queries.
+ Il existe un second paramètre booléen optionnel. Si <literal>true</literal>,
+ il précise l'exécution de <function>pg_start_backup</function> aussi
+ rapidement que possible. Cela force un point de retournement immédiat qui
+ causera un pic dans les opérations d'entrées/sorties, ralentissant toutes
+ les requêtes exécutées en parallèle.
</para>
<para>
@@ -13517,9 +13533,9 @@
</entry>
<entry><type>bigint</type></entry>
<entry>
- Disk space used by the specified fork, <literal>'main'</literal> or
- <literal>'fsm'</literal>, of a table or index with the specified OID
- or name. The table name can be qualified with a schema name
+ Espace disque utilisé par le fork indiqué, <literal>'main'</literal> ou
+ <literal>'fsm'</literal>, d'une table ou index d'OID ou de nom indiqué.
+ Le nom de la table peut être qualifié avec un nom de schéma.
</entry>
</row>
<row>
@@ -13528,7 +13544,7 @@
</entry>
<entry><type>bigint</type></entry>
<entry>
- Shorthand for <literal>pg_relation_size(..., 'main')</literal>
+ Raccourci pour <literal>pg_relation_size(..., 'main')</literal>
</entry>
</row>
<row>
@@ -13561,9 +13577,9 @@
</entry>
<entry><type>bigint</type></entry>
<entry>
- Total disk space used by the table with the specified OID or name,
- including indexes and toasted data. The table name can be
- qualified with a schema name
+ Espace disque total utilisé par la table de cet OID ou nom, incluant
+ les index et les données de la partie TOAST. Le nom de la table peut
+ être qualifié d'un nom de schéma.
</entry>
</row>
</tbody>
@@ -13583,12 +13599,11 @@
<para>
<function>pg_relation_size</function> accepte l'OID ou le nom d'une table, d'un
- index ou d'une table toast et renvoie la taille en octets. Specifying
- <literal>'main'</literal> or leaving out the second argument returns the
- size of the main data fork of the relation. Specifying
- <literal>'fsm'</literal> returns the size of the
- Free Space Map (see <xref linkend="storage-fsm"/>) associated with the
- relation.
+ index ou d'une table toast et renvoie la taille en octets. Indiquer
+ <literal>'main'</literal> ou laisser le second argument renvoit la taille du
+ morceau de données principal de la relation. Indiquer
+ <literal>'fsm'</literal> renvoit la taille de la carte des espaces libres
+ (voir <xref linkend="storage-fsm"/>) associée à cette relation.
</para>
<para>
@@ -13885,54 +13900,58 @@
</sect1>
<sect1 id="functions-trigger">
- <title>Trigger Functions</title>
+ <title>Fonctions trigger</title>
<indexterm>
<primary>suppress_redundant_updates_trigger</primary>
</indexterm>
<para>
- Currently <productname>PostgreSQL</productname> provides one built in trigger
- function, <function>suppress_redundant_updates_trigger</function>,
- which will prevent any update
- that does not actually change the data in the row from taking place, in
- contrast to the normal behaviour which always performs the update
- regardless of whether or not the data has changed. (This normal behaviour
- makes updates run faster, since no checking is required, and is also
- useful in certain cases.)
+ Actuellement, <productname>PostgreSQL</productname> fournit une fonction
+ de trigger interne, <function>suppress_redundant_updates_trigger</function>,
+ qui empêchera toute mise à jour qui ne modifie pas réellement les données
+ de cette ligne, en contrate au comportement normal qui réalise toujours
+ une mise à jour, que les données soient réellement changées ou pas. (Ce
+ comportement normal fait que les mises à jour s'exécutent rapidement car
+ aucune vérification n'est nécessaire et c'est aussi utile dans certains
+ cas.)
</para>
<para>
- Ideally, you should normally avoid running updates that don't actually
- change the data in the record. Redundant updates can cost considerable
- unnecessary time, especially if there are lots of indexes to alter,
- and space in dead rows that will eventually have to be vacuumed.
- However, detecting such situations in client code is not
- always easy, or even possible, and writing expressions to detect
- them can be error-prone. An alternative is to use
- <function>suppress_redundant_updates_trigger</function>, which will skip
- updates that don't change the data. You should use this with care,
- however. The trigger takes a small but non-trivial time for each record,
- so if most of the records affected by an update are actually changed,
- use of this trigger will actually make the update run slower.
+ Idéalement, vous devriez normalement éviter d'exécuter des mises à jour
+ qui ne modifient pas réellement les données de l'enregistrement. Les mise
+ à jour redondantes peuvent coûter considérablement en temps d'exécution,
+ tout spécialement si vous avez beaucoup d'index à modifier, et en espace
+ dans des lignes mortes que vous devrez finir par VACUUMées. Néanmoins,
+ la détection de telles situations dans le code client n'est pas toujours
+ facile, voire même possible, et écrire des expressions pour détecter ce
+ type de cas peut facilement amener des erreyrs. Une alternative est
+ d'utiliser <function>suppress_redundant_updates_trigger</function>, qui
+ ignorera les mises à jour qui ne modifient pas réellement les données.
+ Néanmoins, vous devez être très prudent quant à son utilisation. Le trigger
+ consomme un temps petit, mais à ne pas négliger, pour vérifier que la mise
+ à jour doit se faire. Autrement dit, si la plupart des enregistrements
+ affectés par une mise à jour seront réellement modifiés, utiliser ce
+ trigger rendra la mise à jour bien plus lente.
</para>
<para>
- The <function>suppress_redundant_updates_trigger</function> function can be
- added to a table like this:
+ La fonction <function>suppress_redundant_updates_trigger</function> peut
+ être ajoutée à une table de cette façon :
<programlisting>
CREATE TRIGGER z_min_update
BEFORE UPDATE ON tablename
FOR EACH ROW EXECUTE PROCEDURE suppress_redundant_updates_trigger();
</programlisting>
- In most cases, you would want to fire this trigger last for each row.
- Bearing in mind that triggers fire in name order, you would then
- choose a trigger name that comes after the name of any other trigger
- you might have on the table.
+ Dans la plupart des cas, vous voudrez déclencher ce tigger en dernier pour
+ chaque ligne. Gardez en tête que les triggers sont déclenchés dans l'ordre
+ alphabétique de leur nom, vous choisirez donc un nom de trigger qui vient
+ apr_s le nom des autres trigegrs que vous pourriez avoir sur la table.
</para>
+
<para>
- For more information about creating triggers, see
- <xref linkend="sql-createtrigger"/>.
+ Pour plus d'informations sur la création des trigger, voir
+ <xref linkend="sql-createtrigger"/>.
</para>
</sect1>
</chapter>
Modified: traduc/trunk/postgresql/release.xml
===================================================================
--- traduc/trunk/postgresql/release.xml 2009-05-02 15:22:39 UTC (rev 1316)
+++ traduc/trunk/postgresql/release.xml 2009-05-03 11:57:02 UTC (rev 1317)
@@ -2263,7 +2263,7 @@
</itemizedlist>
<sect4>
- <title><link linkend="APP-PSQL"><application>psql</application></link></title>
+ <title><link linkend="app-psql"><application>psql</application></link></title>
<itemizedlist>
<listitem>
@@ -2360,7 +2360,7 @@
</sect4>
<sect4>
- <title><link linkend="APP-PSQL"><application>psql</application></link> \d*</title>
+ <title><link linkend="app-psql"><application>psql</application></link> \d*</title>
<itemizedlist>
<listitem>
@@ -2456,7 +2456,7 @@
</sect4>
<sect4>
- <title><link linkend="APP-PGDUMP"><application>pg_dump</application></link></title>
+ <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
<itemizedlist>
<listitem>
@@ -10579,8 +10579,7 @@
<para>
Amélioration des valeurs par défaut pour les paramètres <link
linkend="guc-shared-buffers"><varname>shared_buffers</varname></link>
- et <link
- linkend="guc-max-fsm-pages"><varname>max_fsm_pages</varname></link>
+ et <varname>max_fsm_pages</varname>
(Andrew)
</para>
</listitem>
Plus d'informations sur la liste de diffusion Trad