Changeset 889

Show
Ignore:
Timestamp:
01/25/08 07:52:31 (1 year ago)
Author:
gleu
Message:

Passage de toutes les nouvelles pages en ISO8859-15 pour conserver la cohérence avec les anciennes pages.
Ajout de la déclaration de l'encodage sur toutes les nouvelles pages.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • traduc/trunk/manuel/acronyms.xml

    r887 r889  
     1<?xml version="1.0" encoding="ISO-8859-1"?> 
    12<!-- Dernière modification 
    23     le       $Date$ 
     
    89 
    910 <para> 
    10   Voici une liste des acronymes habituellement utilisées dans la documentation 
     11  Voici une liste des acronymes habituellement utilisées dans la documentation 
    1112  <productname>PostgreSQL</productname> et dans les discussions autour de 
    1213  <productname>PostgreSQL</productname>. 
     
    279280     <para> 
    280281      <link linkend="config-setting">Grand Unified Configuration</link>, 
    281       le sous-systÚme <productname>PostgreSQL</productname> qui gÚre la 
     282      le sous-système <productname>PostgreSQL</productname> qui gère la 
    282283      configuration du serveur 
    283284     </para> 
     
    513514     <para> 
    514515      <link linkend="server-programming">Programming Languages (langages de 
    515       programmation cÃŽté serveur)</link> 
     516      programmation côté serveur)</link> 
    516517     </para> 
    517518    </listitem> 
  • traduc/trunk/manuel/adminpack.xml

    r888 r889  
    1 <!-- DerniÚre modification 
     1<?xml version="1.0" encoding="ISO-8859-1"?> 
     2<!-- Dernière modification 
    23     le       $Date$ 
    34     par      $Author$ 
    4      révision $Revision$ --> 
     5     révision $Revision$ --> 
    56 
    67<sect1> 
     
    1213 
    1314 <para> 
    14   <filename>adminpack</filename> implémente un certain nombre de fonctions de 
     15  <filename>adminpack</filename> implémente un certain nombre de fonctions de 
    1516  support que <application>pgAdmin</application> et d'autres outils de gestion 
    16   et d'administration peuvent utiliser pour fournir des fonctionnalité
    17   supplémentaires, comme la gestion à distance de journaux applicatifs. 
     17  et d'administration peuvent utiliser pour fournir des fonctionnalité
     18  supplémentaires, comme la gestion à distance de journaux applicatifs. 
    1819 </para> 
    1920 
    2021 <sect2> 
    21   <title>Fonctions implémentées</title> 
     22  <title>Fonctions implémentées</title> 
    2223  <para> 
    23    Les fonctions ajoutées par <filename>adminpack</filename> peuvent seulement 
    24    Ãªtre exécutées par un super-utilisateur. Voici la liste des fonctions&nbsp;: 
     24   Les fonctions ajoutées par <filename>adminpack</filename> peuvent seulement 
     25   être exécutées par un super-utilisateur. Voici la liste des fonctions&nbsp;: 
    2526 
    2627<programlisting> 
     
    3132setof record pg_catalog.pg_logdir_ls() 
    3233 
    33 /* Renommage des fonctions internes existantes pour une compatibilité 
     34/* Renommage des fonctions internes existantes pour une compatibilité 
    3435avec pgAdmin */ 
    3536int8 pg_catalog.pg_file_read(fname text, data text, append bool) 
  • traduc/trunk/manuel/btree-gist.xml

    r888 r889  
    1 <!-- DerniÚre modification 
     1<?xml version="1.0" encoding="ISO-8859-1"?> 
     2<!-- Dernière modification 
    23     le       $Date$ 
    34     par      $Author$ 
    4      révision $Revision$ --> 
     5     révision $Revision$ --> 
    56 
    67<sect1 id="btree-gist"> 
     
    1213 
    1314 <para> 
    14   <filename>btree_gist</filename> fournit des exemples de classes d'opérateur 
    15   GiST qui implémentent un comportement équivalent à celui du B-Tree pour les 
    16   types de données 
     15  <filename>btree_gist</filename> fournit des exemples de classes d'opérateur 
     16  GiST qui implémentent un comportement équivalent à celui du B-Tree pour les 
     17  types de données 
    1718  <type>int2</type>, <type>int4</type>, <type>int8</type>, <type>float4</type>, 
    1819  <type>float8</type>, <type>numeric</type>, <type>timestamp with time 
     
    2728 
    2829 <para> 
    29   En rÚgle général, ces classes d'opérateur ne dépasseront pas en 
    30   performance les méthodes d'indexage standard équivalents du B-Tree. Il 
    31   leur manquera une fonctionnalité majeure&nbsp;: la possibilité d'assurer 
    32   l'unicité. Néanmoins, elles sont utiles pour des tests de GiST et comme 
    33   base pour le développement d'autres classes d'opérateur GiST. 
     30  En règle général, ces classes d'opérateur ne dépasseront pas en 
     31  performance les méthodes d'indexage standard équivalents du B-Tree. Il 
     32  leur manquera une fonctionnalité majeure&nbsp;: la possibilité d'assurer 
     33  l'unicité. Néanmoins, elles sont utiles pour des tests de GiST et comme 
     34  base pour le développement d'autres classes d'opérateur GiST. 
    3435 </para> 
    3536 
     
    3839  <programlisting><![CDATA[ 
    3940   CREATE TABLE test (a int4); 
    40    -- création de l'index 
     41   -- création de l'index 
    4142   CREATE INDEX testidx ON test USING gist (a); 
    42    -- requête 
     43   -- requête 
    4344   SELECT * FROM test WHERE a < 10; 
    4445  ]]></programlisting> 
  • traduc/trunk/manuel/chkpass.xml

    r888 r889  
    1 <!-- DerniÚre modification 
     1<?xml version="1.0" encoding="ISO-8859-1"?> 
     2<!-- Dernière modification 
    23     le       $Date$ 
    34     par      $Author$ 
    4      révision $Revision$ --> 
     5     révision $Revision$ --> 
    56 
    67<sect1 id="chkpass"> 
     
    1213 
    1314 <para> 
    14   Ce module implémente le type de données <type>chkpass</type>, conçu pour 
    15   stocker des mots de passe chiffrés. Chaque mot de passe est automatiquement 
    16   converti dans sa forme chiffrée et est stocké ainsi. Pour comparer un mot 
     15  Ce module implémente le type de données <type>chkpass</type>, conçu pour 
     16  stocker des mots de passe chiffrés. Chaque mot de passe est automatiquement 
     17  converti dans sa forme chiffrée et est stocké ainsi. Pour comparer un mot 
    1718  de passe, il suffit de comparer le champ avec un mot de passe en clair. La 
    1819  fonction de comparaison le chiffrera automatiquement avant la comparaison. 
     
    2122 <para> 
    2223  Il existe des parties dans le code pour reporter une erreur si le mot de 
    23   passe est facilement trouvable. Néanmoins, ce code ne fait rien actuellement. 
     24  passe est facilement trouvable. Néanmoins, ce code ne fait rien actuellement. 
    2425 </para> 
    2526 
    2627 <para> 
    27   Si vous faites précéder la chaîne d'un symbole deux-points, elle est supposé
    28   être déjà chiffrée et stockée sans autre traitement.. Ceci permet la saisie 
    29   des mots de passe précédemment chiffrés. 
     28  Si vous faites précéder la chaîne d'un symbole deux-points, elle est supposé
     29  être déjà chiffrée et stockée sans autre traitement.. Ceci permet la saisie 
     30  des mots de passe précédemment chiffrés. 
    3031 </para> 
    3132 
    3233 <para> 
    33   En sortie, le symbole deux-points est ajouté en préfixe. Cela rend possible 
     34  En sortie, le symbole deux-points est ajouté en préfixe. Cela rend possible 
    3435  la sauvegarde et la restauration des mots de passe sans les chiffrer de 
    35   nouveau. Si vous voulez le mot de passe (chiffré) sans le symbole deux-points, 
     36  nouveau. Si vous voulez le mot de passe (chiffré) sans le symbole deux-points, 
    3637  utilisez la fonction <function>raw()</function>. Ceci vous permet d'utiliser 
    3738  le type avec d'autres 
     
    4344  Unix. Il souffre donc 
    4445  des limitations habituelles de cette fonction, notamment le fait que seuls 
    45   les huit premiers caractÚres d'un mot de passe sont pris en compte. 
     46  les huit premiers caractères d'un mot de passe sont pris en compte. 
    4647 </para> 
    4748 
    4849 <para> 
    49   Notez que le type de données n'est pas indexable. 
     50  Notez que le type de données n'est pas indexable. 
    5051  <!-- 
    5152  I haven't worried about making this type indexable.  I doubt that anyone 
  • traduc/trunk/manuel/contrib-spi.xml

    r888 r889  
     1<?xml version="1.0" encoding="ISO-8859-1"?> 
    12<!-- Dernière modification 
    23     le       $Date$ 
     
    1617  fonctionnels utilisant SPI et les triggers. Bien que ces fonctons ont une 
    1718  certaine valeur en soi, elles sont encore plus utiles en tant qu'exemples 
    18   à modifier pour atteindre vos propres buts. Les fonctions sont suffisament 
    19   généralistes pour être utilisées avec toute table mais vous devez spécifier 
    20   les noms des tables et des champs (comme décrit ci-dessous) lors de la 
    21   création d'un trigger. 
     19  à modifier pour atteindre vos propres buts. Les fonctions sont suffisament 
     20  généralistes pour être utilisées avec toute table mais vous devez spécifier 
     21  les noms des tables et des champs (comme décrit ci-dessous) lors de la 
     22  création d'un trigger. 
    2223 </para> 
    2324 
    2425 <sect2> 
    25   <title>refint.c &mdash; fonctions pour réimplémenter l'intégrité 
    26   référentielle</title> 
     26  <title>refint.c &mdash; fonctions pour réimplémenter l'intégrité 
     27  référentielle</title> 
    2728 
    2829  <para> 
    2930   <function>check_primary_key()</function> et 
    30    <function>check_foreign_key()</function> sont utilisées pour vérifier les 
    31    contraintes de clé étrangÚre. (Cette fonctionnalité est dépassée depuis 
    32    longtemps par le mécanisme interne, mais le module reste utile comme 
     31   <function>check_foreign_key()</function> sont utilisées pour vérifier les 
     32   contraintes de clé étrangère. (Cette fonctionnalité est dépassée depuis 
     33   longtemps par le mécanisme interne, mais le module reste utile comme 
    3334   exemple.) 
    3435  </para> 
    3536 
    3637  <para> 
    37    <function>check_primary_key()</function> vérifie la table de référence. 
    38    Pour l'utiliser, créez un trigger <literal>BEFORE INSERT OR UPDATE</literal> 
    39    en utilisant cette fonction sur une table référençant une autre table. 
    40    Spécifiez les arguments du trigger&nbsp;: le nom de la colonne de 
    41    référence de la table qui forme la clé étrangÚre, le nom de la table 
    42    référencée et le nom de la colonne pour la table référencée qui forme la 
    43    clé primaire/unique. Il peut y avoir plusieurs colonnes. Pour gérer 
    44    plusieurs clés étrangÚres, créez un trigger pour chaque référence. 
    45   </para> 
    46  
    47   <para> 
    48    <function>check_foreign_key()</function> vérifie la table référencée. 
    49    Pour l'utiliser, créez un trigger <literal>BEFORE DELETE OR UPDATE</literal> 
    50    en utilisant cette fonction sur une table référencée par d'autres tables. 
    51    Spécifiez les arguments du trigger&nbsp;: nombre de tables référantes pour 
    52    lesquelles la fonction va réaliser la vérification, l'action si une clé 
    53    de référence est trouvée (<literal>cascade</literal> &mdash; pour supprimer 
    54    une ligne référante, <literal>restrict</literal> &mdash; pour annuler la 
    55    transaction si des clés référantes existent, <literal>setnull</literal> 
    56    &mdash; pour initialiser les champs des clés référantes à NULL), les noms 
     38   <function>check_primary_key()</function> vérifie la table de référence. 
     39   Pour l'utiliser, créez un trigger <literal>BEFORE INSERT OR UPDATE</literal> 
     40   en utilisant cette fonction sur une table référençant une autre table. 
     41   Spécifiez les arguments du trigger&nbsp;: le nom de la colonne de 
     42   référence de la table qui forme la clé étrangère, le nom de la table 
     43   référencée et le nom de la colonne pour la table référencée qui forme la 
     44   clé primaire/unique. Il peut y avoir plusieurs colonnes. Pour gérer 
     45   plusieurs clés étrangères, créez un trigger pour chaque référence. 
     46  </para> 
     47 
     48  <para> 
     49   <function>check_foreign_key()</function> vérifie la table référencée. 
     50   Pour l'utiliser, créez un trigger <literal>BEFORE DELETE OR UPDATE</literal> 
     51   en utilisant cette fonction sur une table référencée par d'autres tables. 
     52   Spécifiez les arguments du trigger&nbsp;: nombre de tables référantes pour 
     53   lesquelles la fonction va réaliser la vérification, l'action si une clé 
     54   de référence est trouvée (<literal>cascade</literal> &mdash; pour supprimer 
     55   une ligne référante, <literal>restrict</literal> &mdash; pour annuler la 
     56   transaction si des clés référantes existent, <literal>setnull</literal> 
     57   &mdash; pour initialiser les champs des clés référantes à NULL), les noms 
    5758   des colonnes de la table contenant le trigger, colonnes qui forment une 
    58    clé primaire/unique, puis le nom de la table référante et les noms des 
    59    colonnes (répété pour toutes les tables référantes le nombre de fois 
    60    spécifié par le premier argument). Notez que les colonnes de clé 
    61    primaire/unique devraient être marquées NOT NULL et devraient avoir un 
     59   clé primaire/unique, puis le nom de la table référante et les noms des 
     60   colonnes (répété pour toutes les tables référantes le nombre de fois 
     61   spécifié par le premier argument). Notez que les colonnes de clé 
     62   primaire/unique devraient être marquées NOT NULL et devraient avoir un 
    6263   index unique. 
    6364  </para> 
     
    6970 
    7071 <sect2> 
    71   <title>timetravel.c &mdash; fonctions pour implémenter le voyage dans le 
     72  <title>timetravel.c &mdash; fonctions pour implémenter le voyage dans le 
    7273  temps</title> 
    7374 
    7475  <para> 
    75    Auparavant, <productname>PostgreSQL</productname> avait une fonctionnalité 
     76   Auparavant, <productname>PostgreSQL</productname> avait une fonctionnalité 
    7677   de voyage dans le temps, permettant de conserver l'heure d'insertion et 
    77    de suppression pour chaque ligne. Ce comportement peut être émulé en 
     78   de suppression pour chaque ligne. Ce comportement peut être émulé en 
    7879   utilisant ces fonctions. Pour les utiliser, vous devez ajouter deux champs 
    79    de type <type>abstime</type> à la table pour stocker le moment où une 
    80    ligne a été insérée (start_date) et le moment où elle a été 
    81    modifiée/supprimée (stop_date)&nbsp;: 
     80   de type <type>abstime</type> à la table pour stocker le moment où une 
     81   ligne a été insérée (start_date) et le moment où elle a été 
     82   modifiée/supprimée (stop_date)&nbsp;: 
    8283 
    8384<programlisting> 
     
    9091</programlisting> 
    9192 
    92    Les colonnes peuvent être nommées comme vous le voulez, mais dans ce 
     93   Les colonnes peuvent être nommées comme vous le voulez, mais dans ce 
    9394   chapitre, nous les appelerons start_date et stop_date. 
    9495  </para> 
    9596 
    9697  <para> 
    97    Quand une nouvelle ligne est insérée, start_date doit normalement 
    98    Ãªtre initialisée avec l'heure actuelle et stop_date doit valoir 
     98   Quand une nouvelle ligne est insérée, start_date doit normalement 
     99   être initialisée avec l'heure actuelle et stop_date doit valoir 
    99100   <literal>infinity</literal>. Le trigger substituera automatiquement ces 
    100    valeurs si la donnée insérée contient des NULL dans ces colonnes. 
    101    Généralement, insérer des données explicites non NULL dans ces colonnes 
    102    ne sera fait qu'au chargement de données sauvegardées. 
    103   </para> 
    104  
    105   <para> 
    106    Les lignes avec stop_date égales à <literal>infinity</literal> sont des 
    107    lignes <quote>actuellement valides</quote>, et peuvent être modifiées. 
    108    Les lignes avec un stop_date fini ne peuvent plus être modifiées &mdash; 
    109    le trigger les protÚge. (si vous avez besoin de les modifier, vous 
    110    pouvez désactiver le voyage dans le temps comme indiqué ci-dessous.) 
    111   </para> 
    112  
    113   <para> 
    114    Pour une ligne modifiable, en cas de mise à jour, seul stop_date sera 
    115    modifié (à l'heure actuelle) et une nouvelle ligne avec la donnée modifié
    116    sera insérée. Start_date dans cette nouvelle ligne sera initialisée avec 
     101   valeurs si la donnée insérée contient des NULL dans ces colonnes. 
     102   Généralement, insérer des données explicites non NULL dans ces colonnes 
     103   ne sera fait qu'au chargement de données sauvegardées. 
     104  </para> 
     105 
     106  <para> 
     107   Les lignes avec stop_date égales à <literal>infinity</literal> sont des 
     108   lignes <quote>actuellement valides</quote>, et peuvent être modifiées. 
     109   Les lignes avec un stop_date fini ne peuvent plus être modifiées &mdash; 
     110   le trigger les protège. (si vous avez besoin de les modifier, vous 
     111   pouvez désactiver le voyage dans le temps comme indiqué ci-dessous.) 
     112  </para> 
     113 
     114  <para> 
     115   Pour une ligne modifiable, en cas de mise à jour, seul stop_date sera 
     116   modifié (à l'heure actuelle) et une nouvelle ligne avec la donnée modifié
     117   sera insérée. Start_date dans cette nouvelle ligne sera initialisée avec 
    117118   l'heure courante et stop_date vaudra <literal>infinity</literal>. 
    118119  </para> 
    119120 
    120121  <para> 
    121    Une suppression ne supprime pas réellement la ligne mais initialise 
    122    stop_date à l'heure actuelle. 
     122   Une suppression ne supprime pas réellement la ligne mais initialise 
     123   stop_date à l'heure actuelle. 
    123124  </para> 
    124125 
     
    126127   Pour trouver les lignes <quote>actuellement valides</quote>, ajoutez la 
    127128   clause <literal>stop_date = 'infinity'</literal> dans la condition 
    128    WHERE de la requête. (Vous pouvez l'incorporer dans une vue.) De façon 
    129    similaire, vous pouvez exécuter une requête sur les lignes valides à 
    130    tout moment dans le passé avec les conditions adéquates sur 
     129   WHERE de la requête. (Vous pouvez l'incorporer dans une vue.) De façon 
     130   similaire, vous pouvez exécuter une requête sur les lignes valides à 
     131   tout moment dans le passé avec les conditions adéquates sur 
    131132   start_date et stop_date. 
    132133  </para> 
    133134 
    134135  <para> 
    135    <function>timetravel()</function> est la fonction trigger généraliste qui 
    136    supporte ce comportement. Créez un trigger <literal>BEFORE INSERT OR UPDATE 
     136   <function>timetravel()</function> est la fonction trigger généraliste qui 
     137   supporte ce comportement. Créez un trigger <literal>BEFORE INSERT OR UPDATE 
    137138   OR DELETE</literal> utilisant cette fonction pour chaque table pour laquelle 
    138    la fonctionnalité de voyage dans le temps est activée. Spécifiez deux 
    139    arguments pour le trigger&nbsp;: les noms réels des colonnes start_date et 
    140    stop_date. En option, vous pouvez spécifier entre un et trois arguments 
    141    supplémentaires qui doivent faire référence aux colonnes de type 
     139   la fonctionnalité de voyage dans le temps est activée. Spécifiez deux 
     140   arguments pour le trigger&nbsp;: les noms réels des colonnes start_date et 
     141   stop_date. En option, vous pouvez spécifier entre un et trois arguments 
     142   supplémentaires qui doivent faire référence aux colonnes de type 
    142143   <type>text</type>. Le trigger stockera le nom de l'utilisation courant 
    143    dans la premiÚre de ces colonnes lors d'un INSERT, dans la seconde lors 
    144    d'un UPDATE et dans la troisiÚme pour un DELETE. 
     144   dans la première de ces colonnes lors d'un INSERT, dans la seconde lors 
     145   d'un UPDATE et dans la troisième pour un DELETE. 
    145146  </para> 
    146147 
    147148  <para> 
    148149   <function>set_timetravel()</function> vous permet d'activer et de 
    149    désactiver la fonctionnalité du voyage dans le temps pour une table. 
     150   désactiver la fonctionnalité du voyage dans le temps pour une table. 
    150151   <literal>set_timetravel('ma_table', 1)</literal> l'activera pour la table 
    151152   ma_table. 
    152    <literal>set_timetravel('mytab', 0)</literal> la désactivera pour la table 
     153   <literal>set_timetravel('mytab', 0)</literal> la désactivera pour la table 
    153154   ma_table. 
    154    Dans les deux cas, l'ancien statut est rapporté. Quand elle est 
    155    désactivée, vous pouvez modifier librement les colonnes start_date et 
    156    stop_date. Notez que le statut activé/désactivé est local à la session 
     155   Dans les deux cas, l'ancien statut est rapporté. Quand elle est 
     156   désactivée, vous pouvez modifier librement les colonnes start_date et 
     157   stop_date. Notez que le statut activé/désactivé est local à la session 
    157158   de la base &mdash; les nouvelles commenceront toujours avec cette 
    158    fonctionnalité activée pour toutes les tables. 
    159   </para> 
    160  
    161   <para> 
    162    <function>get_timetravel()</function> renvoie l'état de la fonctionnalité 
     159   fonctionnalité activée pour toutes les tables. 
     160  </para> 
     161 
     162  <para> 
     163   <function>get_timetravel()</function> renvoie l'état de la fonctionnalité 
    163164   du voyage dans le temps pour une table sans la modifier. 
    164165  </para> 
     
    170171 
    171172 <sect2> 
    172   <title>autoinc.c &mdash; fonctions pour l'incrémentation automatique 
     173  <title>autoinc.c &mdash; fonctions pour l'incrémentation automatique 
    173174  d'un champ</title> 
    174175 
    175176  <para> 
    176177   <function>autoinc()</function> est un trigger qui stocke la prochaine valeur 
    177    d'une séquence dans un champ de type integer. Ceci est en partie couvert 
    178    par la fonctionnalité interne de la colonne <quote>serial</quote>, mais 
     178   d'une séquence dans un champ de type integer. Ceci est en partie couvert 
     179   par la fonctionnalité interne de la colonne <quote>serial</quote>, mais 
    179180   n'est pas strictement identique&nbsp;: <function>autoinc()</function> 
    180    surchargera les tentatives de substituer une valeur différente pour ce 
    181    champ lors des insertions et, en option, il peut aussi être utilisé pour 
    182    incrémenter le champ lors des mises à jour. 
    183   </para> 
    184  
    185   <para> 
    186    Pour l'utiliser, créez un trigger <literal>BEFORE INSERT</literal> (ou 
     181   surchargera les tentatives de substituer une valeur différente pour ce 
     182   champ lors des insertions et, en option, il peut aussi être utilisé pour 
     183   incrémenter le champ lors des mises à jour. 
     184  </para> 
     185 
     186  <para> 
     187   Pour l'utiliser, créez un trigger <literal>BEFORE INSERT</literal> (ou 
    187188   en option <literal>BEFORE INSERT OR UPDATE</literal>) en utilisant cette 
    188    fonction. Spécifiez deux arguments pour le trigger&nbsp;: le nom de la 
    189    colonne de type integer à modifier, et le nom de la séquence qui fournira 
    190    les valeurs. (En fait, vous pouvez spécifier plusieurs paires de noms si 
    191    vous voulez mettre à jour plus d'une colonne.) 
     189   fonction. Spécifiez deux arguments pour le trigger&nbsp;: le nom de la 
     190   colonne de type integer à modifier, et le nom de la séquence qui fournira 
     191   les valeurs. (En fait, vous pouvez spécifier plusieurs paires de noms si 
     192   vous voulez mettre à jour plus d'une colonne.) 
    192193  </para> 
    193194 
     
    200201 <sect2> 
    201202  <title>insert_username.c &mdash; fonctions pour tracer les utilisateurs qui 
    202   ont modifié une table</title> 
     203  ont modifié une table</title> 
    203204 
    204205  <para> 
    205206   <function>insert_username()</function> est un trigger qui stocke le 
    206207   nom de l'utilisateur en cours dans un champ texte. Ceci est utile pour 
    207    tracer le dernier utilisateur qui a modifié une ligne particuliÚre d'une 
     208   tracer le dernier utilisateur qui a modifié une ligne particulière d'une 
    208209   table. 
    209210  </para> 
    210211 
    211212  <para> 
    212    Pour l'utiliser, créez un trigger <literal>BEFORE INSERT</literal> et/ou 
     213   Pour l'utiliser, créez un trigger <literal>BEFORE INSERT</literal> et/ou 
    213214   <literal>UPDATE</literal> en utilisant cette fonction. Le seul argument 
    214    du trigger correspond au nom de la colonne texte à modifier. 
     215   du trigger correspond au nom de la colonne texte à modifier. 
    215216  </para> 
    216217 
     
    223224 <sect2> 
    224225  <title>moddatetime.c &mdash; fonctions pour tracer la date et l'heure 
    225   de la derniÚre modification</title> 
     226  de la dernière modification</title> 
    226227 
    227228  <para> 
    228229   <function>moddatetime()</function> est un trigger qui stocke la date et 
    229    l'heure de la derniÚre modification dans un champ de type 
    230    <type>timestamp</type>. Ceci peut être utile pour savoir quand a eu lieu la 
    231    derniÚre modification pour une ligne particuliÚre d'une table. 
    232   </para> 
    233  
    234   <para> 
    235    Pour l'utiliser, créez un trigger <literal>BEFORE UPDATE</literal> en 
     230   l'heure de la dernière modification dans un champ de type 
     231   <type>timestamp</type>. Ceci peut être utile pour savoir quand a eu lieu la 
     232   dernière modification pour une ligne particulière d'une table. 
     233  </para> 
     234 
     235  <para> 
     236   Pour l'utiliser, créez un trigger <literal>BEFORE UPDATE</literal> en 
    236237   utilisant cette fonction. Le seul argument de ce trigger correspond au 
    237    nom de la colonne de type <type>timestamp</type> à modifier. 
     238   nom de la colonne de type <type>timestamp</type> à modifier. 
    238239  </para> 
    239240 
  • traduc/trunk/manuel/contrib.xml

    r888 r889  
    1 <!-- DerniÚre modification 
     1<?xml version="1.0" encoding="ISO-8859-1"?> 
     2<!-- Dernière modification 
    23     le       $Date$ 
    34     par      $Author$ 
    4      révision $Revision$ --> 
     5     révision $Revision$ --> 
    56 
    67<appendix id="contrib"> 
    7  <title>Modules supplémentaires fournis</title> 
     8 <title>Modules supplémentaires fournis</title> 
    89 
    910 <para> 
    1011  Cette annexe contient des informations concernant les modules disponibles 
    11   dans le répertoire <literal>contrib</literal> de la distribution 
     12  dans le répertoire <literal>contrib</literal> de la distribution 
    1213  <productname>PostgreSQL</productname>. Ce sont des outils de portage, 
    13   des outils d'analyse, des fonctionnalités supplémentaires qui ne font pas 
    14   partie du systÚme PostgreSQL de base, principalement parce qu'ils 
    15   s'adressent à une audience limitée ou sont trop expérimentals pour faire 
    16   partie de la distribution de base. Cela ne concerne en rien leur utilité
     14  des outils d'analyse, des fonctionnalités supplémentaires qui ne font pas 
     15  partie du système PostgreSQL de base, principalement parce qu'ils 
     16  s'adressent à une audience limitée ou sont trop expérimentals pour faire 
     17  partie de la distribution de base. Cela ne concerne en rien leur utilité
    1718 </para> 
    1819 
    1920 <para> 
    20   Lors de la construction à partir des sources de la distribution, ces modules 
     21  Lors de la construction à partir des sources de la distribution, ces modules 
    2122  ne sont pas construit automatiquement. Vous pouvez les construire et les 
    22   installer en exécutant&nbsp;: 
     23  installer en exécutant&nbsp;: 
    2324<screen> 
    2425<userinput>gmake</userinput> 
    2526<userinput>gmake install</userinput> 
    2627</screen> 
    27   dans le répertoire <literal>contrib</literal> d'un répertoire des sources 
    28   configuré&nbsp;; ou pour ne construire et installer qu'un seul module 
    29   sélectionné, faites de mêmes dans le sous-répertoire du module. Beaucoup 
    30   de ces modules ont des tests de régression qui peuvent être exécuté
    31   en lançant la commande&nbsp;: 
     28  dans le répertoire <literal>contrib</literal> d'un répertoire des sources 
     29  configuré&nbsp;; ou pour ne construire et installer qu'un seul module 
     30  sélectionné, faites de mêmes dans le sous-répertoire du module. Beaucoup 
     31  de ces modules ont des tests de régression qui peuvent être exécuté
     32  en lançant la commande&nbsp;: 
    3233<screen> 
    3334<userinput>gmake installcheck</userinput> 
    3435</screen> 
    3536  une fois que le serveur <productname>PostgreSQL</productname> est en cours 
    36   d'exécution. (Notez que <literal>gmake check</literal> n'est pas 
    37   supporté&nbsp;; vous devez avoir un serveur de base de données opérationnel 
    38   pour réaliser ces tests, et vous devez avoir construit et installer le 
    39   module pour qu'il soit testé.) 
     37  d'exécution. (Notez que <literal>gmake check</literal> n'est pas 
     38  supporté&nbsp;; vous devez avoir un serveur de base de données opérationnel 
     39  pour réaliser ces tests, et vous devez avoir construit et installer le 
     40  module pour qu'il soit testé.) 
    4041 </para> 
    4142 
    4243 <para> 
    43   Si vous utilisez une version déjà packagée de 
     44  Si vous utilisez une version déjà packagée de 
    4445  <productname>PostgreSQL</productname>, ces modules sont typiquement 
    45   disponibles dans un package séparé, comme par exemple 
     46  disponibles dans un package séparé, comme par exemple 
    4647  <literal>postgresql-contrib</literal>. 
    4748 </para> 
     
    4950 <para> 
    5051  Beaucoup de ces modules fournissent de nouvelles fonctions, de nouveaux 
    51   opérateurs ou types utilisateurs. Pour pouvoir utiliser un de ces 
    52   modules, aprÚs avoir installé le code, vous devez enregistrer les 
    53   nouveaux objets dans la base de donnéesen exécutant les commandes SQL 
     52  opérateurs ou types utilisateurs. Pour pouvoir utiliser un de ces 
     53  modules, après avoir installé le code, vous devez enregistrer les 
     54  nouveaux objets dans la base de donnéesen exécutant les commandes SQL 
    5455  contenus dans le fichier <literal>.sql</literal> fourni par le module. 
    5556  Par exemple&nbsp;: 
     
    5960</programlisting> 
    6061 
    61   Ici, <replaceable>SHAREDIR</replaceable> est le répertoire 
     62  Ici, <replaceable>SHAREDIR</replaceable> est le répertoire 
    6263  <quote>share</quote> de l'installation (<literal>pg_config 
    63   --sharedir</literal> vous indiquera de quel répertoire il s'agit). 
    64   Dans la plupart de cas, le script doit être exécuté par un super-utilisateur 
    65   de la base de données. 
     64  --sharedir</literal> vous indiquera de quel répertoire il s'agit). 
     65  Dans la plupart de cas, le script doit être exécuté par un super-utilisateur 
     66  de la base de données. 
    6667 </para> 
    6768 
    6869 <para> 
    69   Vous avez besoin d'exécuter le fichier <literal>.sql</literal> dans 
    70   chaque base de données où le module doit être disponible. Autrement, 
    71   exécutez-le dans la base <literal>template1</literal> pour que le module 
    72   soit automatiquement copiée dans toute nouvelle base de données créée. 
     70  Vous avez besoin d'exécuter le fichier <literal>.sql</literal> dans 
     71  chaque base de données où le module doit être disponible. Autrement, 
     72  exécutez-le dans la base <literal>template1</literal> pour que le module 
     73  soit automatiquement copiée dans toute nouvelle base de données créée. 
    7374 </para> 
    7475 
    7576 <para> 
    76   Vous pouvez modifier la premiÚre commande du fichier 
    77   <literal>.sql</literal> pour déterminer le schéma de la base où seront créé
    78   les objets. Par défaut, ils seront placés dans <literal>public</literal>. 
     77  Vous pouvez modifier la première commande du fichier 
     78  <literal>.sql</literal> pour déterminer le schéma de la base où seront créé
     79  les objets. Par défaut, ils seront placés dans <literal>public</literal>. 
    7980 </para> 
    8081 
    8182 <para> 
    82   AprÚs une mise à jour majeure de <productname>PostgreSQL</productname>, 
    83   exécutez de nouveau le script d'installation, même si les objets du 
    84   module peuvent être créés par la sauvegarde de l'ancienne 
     83  Après une mise à jour majeure de <productname>PostgreSQL</productname>, 
     84  exécutez de nouveau le script d'installation, même si les objets du 
     85  module peuvent être créés par la sauvegarde de l'ancienne 
    8586  installation. Cela vous assure que toute nouvelle fonction sera 
    86   disponible et tout correction nécessaire sera appliquée. 
     87  disponible et tout correction nécessaire sera appliquée. 
    8788 </para> 
    8889 
  • traduc/trunk/manuel/cube.xml

    r888 r889  
    1 <!-- DerniÚre modification 
     1<?xml version="1.0" encoding="ISO-8859-1"?> 
     2<!-- Dernière modification 
    23     le       $Date$ 
    34     par      $Author$ 
    4      révision $Revision$ --> 
     5     révision $Revision$ --> 
    56 
    67<sect1 id="cube"> 
     
    1213 
    1314 <para> 
    14   Ce module implémente le type de données <type>cube</type>, représentant des 
    15   cubes à plusieurs dimensions. 
     15  Ce module implémente le type de données <type>cube</type>, représentant des 
     16  cubes à plusieurs dimensions. 
    1617 </para> 
    1718 
     
    2021 
    2122  <para> 
    22    Ce qui suit est un ensemble de représentations externes valides pour le 
     23   Ce qui suit est un ensemble de représentations externes valides pour le 
    2324   type <type>cube</type>. <replaceable>x</replaceable>, 
    2425   <replaceable>y</replaceable>, etc sont des nombres en virgule 
     
    2728 
    2829  <table> 
    29    <title>Représentations externes d'un cube</title> 
     30   <title>Représentations externes d'un cube</title> 
    3031   <tgroup cols="2"> 
    3132    <tbody> 
    3233     <row> 
    3334      <entry><literal><replaceable>x</replaceable></literal></entry> 
    34       <entry>Une valeur en virgule flottante représentation un point sur 
    35        une dimension ou un élément cube zéro à une dimension 
     35      <entry>Une valeur en virgule flottante représentation un point sur 
     36       une dimension ou un élément cube zéro à une dimension 
    3637      </entry> 
    3738     </row> 
    3839     <row> 
    3940      <entry><literal>(<replaceable>x</replaceable>)</literal></entry> 
    40       <entry>Identique à ci-dessus</entry> 
     41      <entry>Identique à ci-dessus</entry> 
    4142     </row> 
    4243     <row> 
    4344      <entry><literal><replaceable>x1</replaceable>,<replaceable>x2</replaceable>,...,<replaceable>xn</replaceable></literal></entry> 
    44       <entry>Un point dans un espace à n dimensions, représenté en interne 
    45        comme une boîte de volume zéro 
     45      <entry>Un point dans un espace à n dimensions, représenté en interne 
     46       comme une boîte de volume zéro 
    4647      </entry> 
    4748     </row> 
    4849     <row> 
    4950      <entry><literal>(<replaceable>x1</replaceable>,<replaceable>x2</replaceable>,...,<replaceable>xn</replaceable>)</literal></entry> 
    50       <entry>Identique à ci-dessus</entry> 
     51      <entry>Identique à ci-dessus</entry> 
    5152     </row> 
    5253     <row> 
    5354      <entry><literal>(<replaceable>x</replaceable>),(<replaceable>y</replaceable>)</literal></entry> 
    54       <entry>Élément cube à une dimension commençant à 
    55       <replaceable>x</replaceable> et se terminant à 
     55      <entry>Élément cube à une dimension commençant à 
     56      <replaceable>x</replaceable> et se terminant à 
    5657      <replaceable>y</replaceable> ou vice-versa&nbsp;; l'ordre n'importe pas 
    5758      </entry> 
     
    5960     <row> 
    6061      <entry><literal>[(<replaceable>x</replaceable>),(<replaceable>y</replaceable>)]</literal></entry> 
    61       <entry>Identique à ci-dessus</entry> 
     62      <entry>Identique à ci-dessus</entry> 
    6263     </row> 
    6364     <row> 
    6465      <entry><literal>(<replaceable>x1</replaceable>,...,<replaceable>xn</replaceable>),(<replaceable>y1</replaceable>,...,<replaceable>yn</replaceable>)</literal></entry> 
    65       <entry>Boîte à n dimensions représentée par une paire pour ses coins 
    66        opposé
     66      <entry>Boîte à n dimensions représentée par une paire pour ses coins 
     67       opposé
    6768      </entry> 
    6869     </row> 
    6970     <row> 
    7071      <entry><literal>[(<replaceable>x1</replaceable>,...,<replaceable>xn</replaceable>),(<replaceable>y1</replaceable>,...,<replaceable>yn</replaceable>)]</literal></entry> 
    71       <entry>Identique à ci-dessus</entry> 
     72      <entry>Identique à ci-dessus</entry> 
    7273     </row> 
    7374    </tbody> 
     
    7677 
    7778  <para> 
    78    Peu importe l'ordre dans lesquels sont saisis les coins opposés d'un cube. 
     79   Peu importe l'ordre dans lesquels sont saisis les coins opposés d'un cube. 
    7980   Les fonctions <type>cube</type> s'occupent de la bascule 
    80    pour réaliser une représentation uniforme <quote>en bas à gauche, en haut à 
     81   pour réaliser une représentation uniforme <quote>en bas à gauche, en haut à 
    8182   droite</quote>. 
    8283  </para> 
    8384 
    8485  <para> 
    85    Les espaces blancs sont ignorés, donc 
    86    <literal>[(<replaceable>x</replaceable>),(<replaceable>y</replaceable>)]</literal> est identique à 
     86   Les espaces blancs sont ignorés, donc 
     87   <literal>[(<replaceable>x</replaceable>),(<replaceable>y</replaceable>)]</literal> est identique à 
    8788   <literal>[ ( <replaceable>x</replaceable> ), ( <replaceable>y</replaceable> ) ]</literal>. 
    8889  </para> 
     
    9091 
    9192 <sect2> 
    92   <title>Précision</title> 
    93  
    94   <para> 
    95    Les valeurs sont enregistrées en interne sous la forme de nombres en 
     93  <title>Précision</title> 
     94 
     95  <para> 
     96   Les valeurs sont enregistrées en interne sous la forme de nombres en 
    9697   virgule flottante. Cela signifie que les nombres avec plus de 16 chiffres 
    97    significatifs seront tronqués. 
     98   significatifs seront tronqués. 
    9899  </para> 
    99100 </sect2> 
     
    103104 
    104105  <para> 
    105    Le module <filename>cube</filename> inclut une classe d'opérateur pour 
    106    index GiST pour les valeurs de type <type>cube</type>. Les opérateurs 
    107    supportés par la classe d'opérateur GiST incluent&nbsp;: 
     106   Le module <filename>cube</filename> inclut une classe d'opérateur pour 
     107   index GiST pour les valeurs de type <type>cube</type>. Les opérateurs 
     108   supportés par la classe d'opérateur GiST incluent&nbsp;: 
    108109  </para> 
    109110 
     
    111112   <listitem> 
    112113    <programlisting> 
    113 a = b                  Identique à 
     114a = b                  Identique à 
    114115    </programlisting> 
    115116    <para> 
     
    144145 
    145146  <para> 
    146     (Avant PostgreSQL 8.2, les opérateurs de contenance @&gt; et &lt;@ étaient 
    147    appelés respectivement @ et ~. Ces noms sont toujours disponibles mais sont 
    148    déclarés obsolÚtes et seront supprimés un jour. Notez que les anciens noms 
    149    sont inversés par rapport à la convention suivie par les types de données 
    150    géométriques&nbsp;!) 
    151   </para> 
    152  
    153   <para> 
    154    Les opérateurs du standard B-tree sont aussi fournis, par exemple&nbsp;: 
     147    (Avant PostgreSQL 8.2, les opérateurs de contenance @&gt; et &lt;@ étaient 
     148   appelés respectivement @ et ~. Ces noms sont toujours disponibles mais sont 
     149   déclarés obsolètes et seront supprimés un jour. Notez que les anciens noms 
     150   sont inversés par rapport à la convention suivie par les types de données 
     151   géométriques&nbsp;!) 
     152  </para> 
     153 
     154  <para> 
     155   Les opérateurs du standard B-tree sont aussi fournis, par exemple&nbsp;: 
    155156 
    156157  <programlisting> 
     
    159160  </programlisting> 
    160161 
    161    Ces opérateurs n'ont pas vraiment de sens sauf en ce qui concerne le tri. 
    162    Ces opérateurs comparent en premier (a) à (c) et, s'ils sont égaux, 
    163    comparent (b) à (d). Cela fait un bon tri dans la plupart des cas, ce qui 
     162   Ces opérateurs n'ont pas vraiment de sens sauf en ce qui concerne le tri. 
     163   Ces opérateurs comparent en premier (a) à (c) et, s'ils sont égaux, 
     164