Changeset 1115
- Timestamp:
- 08/05/08 17:26:24 (4 months ago)
- Files:
-
- traduc/trunk/postgresql/func.xml (modified) (76 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
traduc/trunk/postgresql/func.xml
r1109 r1115 4611 4611 <!-- SAS 20070731 : gourmandise est un terme sympathique, mais est-ce le 4612 4612 meilleur ?--> 4613 <!-- SAS::ICI -->4614 4613 <para> 4615 4614 La gourmandise d'une ER est déterminée par les règles … … 4691 4690 <lineannotation>Resultat : </lineannotation><computeroutput>1</computeroutput></screen> 4692 4691 Dans le premier cas, l'ER dans son intégralité est gourmande parce que <literal>Y*</literal> 4693 est gourmand. Elle peut correspondre au début de<literal>Y</literal> et4694 établlit une correspondance avecla chaîne la plus longue à partir de là,4692 est gourmand. Il peut établir une correspondance qui débute à <literal>Y</literal> et 4693 correspondre à la chaîne la plus longue à partir de là, 4695 4694 soit <literal>Y123</literal>. La sortie reprend la partie entre parenthèses, soit 4696 4695 <literal>123</literal>. Dans le second cas, l'ER dans son ensemble n'est 4697 4696 pas gourmande 4698 car <literal>Y*?</literal> ne l'est pas. Elle peut correspondre au4699 début de <literal>Y</literal> et établit une correspondance avecla chaîne la plus courte4697 car <literal>Y*?</literal> ne l'est pas. Il peut établir une 4698 correspondance qui débute à <literal>Y</literal> et correspond à la chaîne la plus courte 4700 4699 à partir de là, soit <literal>Y1</literal>. La sous-expression 4701 4700 <literal>[0-9]{1,3}</literal> est gourmande mais elle ne peut pas changer la … … 4802 4801 4803 4802 <para> 4804 Un grand nombre d'extensions ERA sont empruntées dePerl mais certaines4803 Un grand nombre d'extensions ERA sont empruntées à Perl mais certaines 4805 4804 ont été modifiées et quelques extensions Perl ne sont pas 4806 4805 présentes. Les incompatibilités incluent <literal>\b</literal>, <literal>\B</literal>, … … 4853 4852 <literal>}</literal> étant eux-même des caractères ordinaires. Les parenthèses 4854 4853 pour les sous-expressions imbriquées sont <literal>\(</literal> et <literal>\)</literal>, 4855 avec <literal>(</literal> et <literal>)</literal> eux-mêmesdes caractères4854 <literal>(</literal> et <literal>)</literal> restent des caractères 4856 4855 ordinaires. <literal>^</literal> est un caractère ordinaire sauf au début d'une ER 4857 4856 ou au début d'une sous-expression entre parenthèses, … … 4860 4859 <literal>*</literal> est un caractère ordinaire s'il apparaît au début d'une ER ou 4861 4860 au début d'une sous-expression entre parenthèses (après un possible 4862 <literal>^</literal>). Enfin, les ré férences arrières à un chiffre sont disponibles, et4861 <literal>^</literal>). Enfin, les rétro-références à un chiffre sont disponibles, et 4863 4862 <literal>\<</literal> et <literal>\></literal> sont des synonymes pour 4864 4863 respectivement <literal>[[:<:]]</literal> et <literal>[[:>:]]</literal> ; … … 4907 4906 La fonction <function>to_timestamp</function> peut aussi prendre un 4908 4907 argument <type>double precision</type> unique pour convertir une valeur de type 4909 epoch Unix en <type>timestamp with time zone</type> 4910 ( les types epoch Unix (<type>entier</type>) sont implicitement convertis en4911 <type>double precision</type> ).4908 epoch Unix en <type>timestamp with time zone</type>. 4909 (Les types epoch Unix (<type>entier</type>) sont implicitement convertis en 4910 <type>double precision</type>.) 4912 4911 </para> 4913 4912 … … 5002 5001 modèles sont reconnus et remplacés par des données proprement formatées 5003 5002 issues de la valeur à formater. Tout texte qui n'est pas un motif du modèle est 5004 copié sans modification. De même, dans une chaîne de modèle d'entrée (pour tout5003 copié sans modification. De même, dans une chaîne modèle en entrée (pour tout 5005 5004 sauf <function>to_char</function>), les motifs du modèle identifient les parties de la 5006 5005 chaîne en entrée à rechercher et les valeurs à trouver. … … 5275 5274 <tbody> 5276 5275 <row> 5276 <!-- SAS 20080730 : padding : complétion ou complément ? Complétement ne 5277 me paraît pas bon --> 5277 5278 <entry>préfixe <literal>FM</literal></entry> 5278 5279 <entry>mode remplissage (<foreignphrase>Fill Mode</foreignphrase>) 5279 (supprime les espaces et les zéros )</entry>5280 (supprime les espaces et les zéros de complétion)</entry> 5280 5281 <entry><literal>FMMonth</literal></entry> 5281 5282 </row> … … 5326 5327 <listitem> 5327 5328 <para> 5328 <literal>TM</literal> n'inclut pas d'espacesen fin de chaîne ;5329 <literal>TM</literal> n'inclut pas les espaces de compéltion en fin de chaîne ; 5329 5330 </para> 5330 5331 </listitem> … … 5335 5336 ignorent les espaces multiples de la chaîne en entrée si l'option 5336 5337 <literal>FX</literal> n'est pas utilisée. <literal>FX</literal> doit 5337 être indiqué comme premier élément du modèle. Par exemple,5338 être indiquée comme premier élément du modèle. Par exemple, 5338 5339 <literal>to_timestamp('2000 JUN', 'YYYY 5339 5340 MON')</literal> est correct mais … … 5363 5364 pour afficher un guillemet double dans la sortie, il faut le faire 5364 5365 précéder d'un antislash. <literal>E'\\"YYYY 5365 Month\\"'</literal>, par exemple <!-- "" font-lock sanity :-) -->5366 ( deux antislashs sont nécessaire parce que l'antislash a5366 Month\\"'</literal>, par exemple. <!-- "" font-lock sanity :-) --> 5367 (Deux antislashs sont nécessaire parce que l'antislash a 5367 5368 déjà une signification spéciale lors de l'utilisation de la syntaxe 5368 5369 d'échappement des chaînes) ; … … 5400 5401 <para> 5401 5402 Une date de semaine ISO (distinct de la date grégorienne) peut être 5402 spécifiée à <function>to_timestamp</function> et <function>to_date</function>5403 passée à <function>to_timestamp</function> et <function>to_date</function> 5403 5404 de deux façons : 5404 5405 <itemizedlist> 5405 5406 <listitem> 5406 5407 <para> 5407 Année, semaine et jour de la semaine. .. par exemple,5408 Année, semaine et jour de la semaine. Par exemple, 5408 5409 <literal>to_date('2006-42-4', 'IYYY-IW-ID')</literal> renvoie la date 5409 <literal>2006-10-19</literal>. Si vous omettez lejour de la semaine,5410 l e jour utilisé sera le lundi.5410 <literal>2006-10-19</literal>. En cas d'omission du jour de la semaine, 5411 lundi est utilisé. 5411 5412 </para> 5412 5413 </listitem> 5413 5414 <listitem> 5414 5415 <para> 5415 Année et jour de l'année. .. par exemple,5416 Année et jour de l'année. Par exemple, 5416 5417 <literal>to_date('2006-291', 'IYYY-IDDD')</literal> renvoie aussi <literal>2006-10-19</literal>. 5417 5418 </para> … … 5421 5422 <para> 5422 5423 Tenter de construire une date en utilisant un mélange de semaine ISO et 5423 de champs de date grégoriens n'a pas de sens et p ourrait faire que vous5424 vous trouviez avec desrésultats incohérents. Dans le contexte d'une année5425 ISO, le concept d'un mois (month) ou du jour d'un mois (day of month) n'a5424 de champs de date grégoriens n'a pas de sens et peut amener des 5425 résultats incohérents. Dans le contexte d'une année 5426 ISO, les concepts de mois (month) et jour du mois (day of month) n'ont 5426 5427 pas de signification. Dans le contexte d'une année grégorienne, la semaine 5427 ISO n'a pas de signification. Les utilisateurs doivent faire attention5428 à conserver séparés les spécifications de date grégorienneset ISO.5428 ISO n'a pas de signification. Il est impératif de distinguer 5429 les spécifications de dates grégorienne et ISO. 5429 5430 </para> 5430 5431 </listitem> … … 5434 5435 les valeurs en millisecondes (<literal>MS</literal>) et microsecondes 5435 5436 (<literal>US</literal>) dans une conversion de chaîne en champ 5436 de type <type>timestamp</type> sont utilisées comme partie d e la5437 fraction décimaledes secondes. Par exemple,5437 de type <type>timestamp</type> sont utilisées comme partie décimale 5438 des secondes. Par exemple, 5438 5439 <literal>to_timestamp('12:3', 'SS:MS')</literal> n'est pas 3 5439 5440 millisecondes mais 300 car la conversion le compte comme 12 + 0,3 … … 5443 5444 Pour obtenir trois millisecondes, il faut écrire 5444 5445 <literal>12:003</literal> que la conversion compte comme 5445 12 + 0,003 = 12,003 secondes ;5446 12 + 0,003 = 12,003 secondes. 5446 5447 </para> 5447 5448 … … 5450 5451 <literal>to_timestamp('15:12:02.020.001230', 'HH:MI:SS.MS.US')</literal> 5451 5452 représente 15 heures, 12 minutes et (2 secondes + 20 millisecondes + 5452 1230 microsecondes =) 2,021230 secondes .5453 1230 microsecondes =) 2,021230 secondes ; 5453 5454 </para> 5454 5455 </listitem> … … 5495 5496 </row> 5496 5497 <row> 5498 <!-- SAS 20080730 : leading zeros ? zéros de remplissage, de début de 5499 chaîne ? --> 5497 5500 <entry><literal>0</literal></entry> 5498 <entry>valeur avec des zéros de remplissage avant</entry>5501 <entry>valeur avec des zéros de début de chaîne</entry> 5499 5502 </row> 5500 5503 <row> … … 5542 5545 <row> 5543 5546 <entry><literal>RN</literal></entry> 5544 <entry>numéro romain ( entrée entre 1 et 3999)</entry>5547 <entry>numéro romain (saisie entre 1 et 3999)</entry> 5545 5548 </row> 5546 5549 <row> … … 5793 5796 <para> 5794 5797 Le <xref linkend="functions-datetime-table"/> affiche les fonctions disponibles 5795 pour le traitement des valeurs date et heure , les détails apparaissant5798 pour le traitement des valeurs date et heure. Les détails sont présentés 5796 5799 dans les sous-sections qui suivent. Le <xref 5797 5800 linkend="operators-datetime-table"/> illustre les comportements des … … 5811 5814 Ces variantes ne sont pas affichées séparément. De plus, les opérateurs 5812 5815 <literal>+</literal> et <literal>*</literal> sont commutatifs (par exemple, 5813 date + integer et integer + date) ; seule une possibilité est présentée5816 date + integer et integer + date) ; une seule possibilité est présentée 5814 5817 ici. 5815 5818 </para> … … 6199 6202 <entry><literal><function>localtimestamp</function></literal></entry> 6200 6203 <entry><type>timestamp</type></entry> 6201 <entry>Date et heure courante (début de la transaction) ; voir la <xref6204 <entry>Date et heure courantes (début de la transaction) ; voir la <xref 6202 6205 linkend="functions-datetime-current"/> 6203 6206 </entry> … … 6257 6260 ( <replaceable>début1</replaceable>, <replaceable>longueur1</replaceable> ) OVERLAPS ( <replaceable>début2</replaceable>, <replaceable>longueur2</replaceable> )</synopsis> 6258 6261 Cette expression renvoie vrai (true) lorsque les deux périodes de temps 6259 (définies par leur point final) se chevauchent, et faux dans le cas6262 (définies par leurs extrémités) se chevauchent, et faux dans le cas 6260 6263 contraire. Les limites peuvent être indiquées comme des paires de 6261 6264 dates, d'heures ou de timestamps ; ou comme une date, une heure ou un … … 6273 6276 6274 6277 <para> 6275 Lors de l'ajout ou de la soustractiond'une valeur de type6276 <type>interval</type> avecune valeur6278 Lors de l'ajout (ou de la soustraction) d'une valeur de type 6279 <type>interval</type> à une valeur 6277 6280 de type <type>timestamp with time zone</type>, le composant jours incrémente 6278 ou décremente la date du <type>timestamp with time zone</type> par lenombre6281 (ou décremente) la date du <type>timestamp with time zone</type> du nombre 6279 6282 de jours indiqués. Avec les modifications occasionnées par les changements 6280 6283 d'heure (avec un fuseau horaire de session qui reconnaît DST), cela … … 6285 6288 </literal> produit un <literal>timestamp with time zone '2005-04-03 6286 6289 12:00-06'</literal> alors qu'ajouter <literal>interval '24 6287 hours'</literal> au même<type>timestamp with time zone</type> initial6290 hours'</literal> au <type>timestamp with time zone</type> initial 6288 6291 produit un <literal>timestamp with time zone '2005-04-03 6289 6292 13:00-06'</literal> parce qu'il y a un changement d'heure le <literal>2005-04-03 … … 6292 6295 6293 6296 <para> 6294 Notez qu'il peut y avoir une ambiguïté dans le retour de6295 <literal>months</literal> par <function>age</function> car les mois n'ont6297 Il peut y avoir une ambiguïté dans le nombre de 6298 <literal>months</literal> retournés par <function>age</function> car les mois n'ont 6296 6299 pas tous le même nombre de jours. L'approche de 6297 <productname>PostgreSQL</productname> utilise le mois à partirde la date6298 la plus ancienne entre les deux dateslors du calcul de mois partiels. Par6300 <productname>PostgreSQL</productname> utilise le mois de la date 6301 la plus ancienne lors du calcul de mois partiels. Par 6299 6302 exemple, <literal>age('2004-06-01', '2004-04-30')</literal> utilise avril 6300 6303 pour ramener <literal>1 mon 1 day</literal>, alors qu'utiliser mai aurait … … 6457 6460 <para> 6458 6461 Le jour de la semaine du lundi (<literal>1</literal>) au dimanche 6459 (<literal>7</literal>) 6462 (<literal>7</literal>). 6460 6463 </para> 6461 6464 … … 6465 6468 </screen> 6466 6469 <para> 6467 Ceci est identique à <literal>dow</literal> sauf pour le dimanche. Ce ci6470 Ceci est identique à <literal>dow</literal> sauf pour le dimanche. Cela 6468 6471 correspond à la numérotation du jour de la semaine suivant le format 6469 6472 <acronym>ISO</acronym> 8601. … … 6490 6493 <para> 6491 6494 Chaque année <acronym>ISO</acronym> commence avec le lundi de la 6492 semaine contenant le 4 janvier, donc soit audébut janvier, soit6493 enfin décembre. L'année <acronym>ISO</acronym> peut être différente de6495 semaine contenant le 4 janvier, donc soit début janvier, soit 6496 fin décembre. L'année <acronym>ISO</acronym> peut être différente de 6494 6497 l'année grégorienne. Voir le champ <literal>week</literal> pour plus 6495 6498 d'informations. … … 6596 6599 </varlistentry> 6597 6600 6601 <!-- SAS leap second : seconde d'ajustement, ajoutée pour rattraper le 6602 temps UTC --> 6598 6603 <varlistentry> 6599 6604 <term><literal>second</literal></term> … … 6601 6606 <para> 6602 6607 Le champs secondes, incluant la partie décimale (0 - 6603 59<footnote><simpara>60 si les secondes « leap » sont implantées par 6608 59<footnote><simpara>60 si les secondes d'ajustement 6609 (<foreignphrase>leap second</foreignphrase>) sont implantées par 6604 6610 le système d'exploitation.</simpara></footnote>). 6605 6611 </para> … … 6726 6732 <type>timestamp</type> ou <type>interval</type>. 6727 6733 (Les valeurs de type <type>date</type> et 6728 <type>time</type> sont converties automatiquement en 6729 respectivement <type>timestamp</type> ou6734 <type>time</type> sont converties automatiquement en, 6735 respectivement, <type>timestamp</type> ou 6730 6736 <type>interval</type>). 6731 6737 <replaceable>champ</replaceable> indique la précision avec laquelle tronquer … … 6962 6968 6963 6969 <para> 6964 <productname>PostgreSQL</productname> fournit aussi des fonctions qui renvoie 6970 <productname>PostgreSQL</productname> fournit aussi des fonctions qui 6971 renvoient 6965 6972 l'heure de début de l'instruction en cours, voire l'heure de l'appel de la 6966 fonction. La liste complète des fonctions ,ne faisant pas partie du standard6967 SQL ,est :6973 fonction. La liste complète des fonctions ne faisant pas partie du standard 6974 SQL est : 6968 6975 <synopsis>now() ; 6969 6976 transaction_timestamp() ; … … 6990 6997 <function>timeofday()</function> est une fonction historique de 6991 6998 <productname>PostgreSQL</productname>. Comme 6992 <function>clock_timestamp()</function>, elle renvoie l'heure courante mais6993 formatée en tant que chaîne <type>text</type> plutôt qu'en valeur de6994 type <type>timestamp with time zone</type>.6999 <function>clock_timestamp()</function>, elle renvoie l'heure courante, mais 7000 celle-ci est alors formatée comme une chaîne <type>text</type> et non comme 7001 une valeur de type <type>timestamp with time zone</type>. 6995 7002 </para> 6996 7003 … … 7002 7009 <programlisting>SELECT CURRENT_TIMESTAMP; 7003 7010 SELECT now(); 7004 SELECT TIMESTAMP 'now'; -- incorrect en utilisationavec DEFAULT</programlisting>7011 SELECT TIMESTAMP 'now'; -- utilisation incorrecte avec DEFAULT</programlisting> 7005 7012 </para> 7006 7013 … … 7010 7017 de la clause <literal>DEFAULT</literal> à la création d'une table. Le système 7011 7018 convertirait <literal>now</literal> en valeur de type 7012 <type>timestamp</type> dès l'analyse de la constante. À ch que fois que la7013 valeur par défaut serait nécessaire, c'est l'heure de création de la7014 table qui serautilisée. Les deux premières formes ne sont pas7015 évaluées avant l'utilisation de la valeur par défaut car ce sont7016 d es appels de fonctions. C'est donc bien le comportement attendu d'heure7017 d'insertion comme valeur par défaut qui est obtenu.7019 <type>timestamp</type> dès l'analyse de la constante. À chaque fois que la 7020 valeur par défaut est nécessaire, c'est l'heure de création de la 7021 table qui est alors utilisée. Les deux premières formes ne sont pas 7022 évaluées avant l'utilisation de la valeur par défaut, il s'agit 7023 d'appels de fonctions. C'est donc bien le comportement attendu, l'heure 7024 d'insertion comme valeur par défaut, qui est obtenu. 7018 7025 </para> 7019 7026 </tip> … … 7054 7061 0,01 seconde est une valeur habituelle. Le délai dure au minimum celui 7055 7062 précisé. Il peut toutefois être plus long du fait de certains facteurs 7056 tels la charge serveur.7063 tels que la charge serveur. 7057 7064 </para> 7058 7065 </note> … … 7061 7068 <para> 7062 7069 Il convient de s'assurer que la session courante ne détient pas plus de verrous que 7063 nécessaire lors de l'appel à <function>pg_sleep</function>. Dans le cas7070 nécessaires lors de l'appel à <function>pg_sleep</function>. Dans le cas 7064 7071 contraire, d'autres sessions peuvent être amenées à attendre que le 7065 7072 processus de retard courant ne termine, ralentissant ainsi tout le système. … … 7100 7107 <row> 7101 7108 <entry><literal>enum_first(anyenum)</literal></entry> 7102 <entry>Renvoi tla première valeur du type enum en entrée</entry>7109 <entry>Renvoie la première valeur du type enum en entrée</entry> 7103 7110 <entry><literal>enum_first(null::couleurs)</literal></entry> 7104 7111 <entry><literal>rouge</literal></entry> … … 7106 7113 <row> 7107 7114 <entry><literal>enum_last(anyenum)</literal></entry> 7108 <entry>Renvoi tla dernière valeur du type enum en entrée</entry>7115 <entry>Renvoie la dernière valeur du type enum en entrée</entry> 7109 7116 <entry><literal>enum_last(null::couleurs)</literal></entry> 7110 7117 <entry><literal>violet</literal></entry> … … 7112 7119 <row> 7113 7120 <entry><literal>enum_range(anyenum)</literal></entry> 7114 <entry>Renvoi ttoutes les valeurs du type enum en entrée dans un tableau7121 <entry>Renvoie toutes les valeurs du type enum en entrée dans un tableau 7115 7122 trié</entry> 7116 7123 <entry><literal>enum_range(null::couleurs)</literal></entry> … … 7120 7127 <entry morerows="2"><literal>enum_range(anyenum, anyenum)</literal></entry> 7121 7128 <entry morerows="2"> 7122 Renvoi tles éléments entre deux valeurs enum données dans un tableau7129 Renvoie les éléments entre deux valeurs enum données dans un tableau 7123 7130 trié. Les valeurs doivent être du même type enum. Si le premier paramètre 7124 est NULL, le résultat se termine raavec la dernière valeur du type enum.7131 est NULL, le résultat se termine avec la dernière valeur du type enum. 7125 7132 </entry> 7126 7133 <entry><literal>enum_range('orange'::couleurs, 'vert'::couleurs)</literal></entry> … … 7140 7147 7141 7148 <para> 7142 Notez qu'en dehors de la forme à deux arguments de7149 En dehors de la forme à deux arguments de 7143 7150 <function>enum_range</function>, ces fonctions ne tiennent pas compte de 7144 7151 la valeur qui leur est fournie ; elles ne s'attachent qu'au type de 7145 donnée déclaré. Soit NULL soitune valeur spécifique du type peut être7146 passée avec le même résultat. Il est plus commun d'appliquer ces7147 fonctions à la colonne d'une table ou à l'argument d'une fonction plutôt7152 donnée déclaré. NULL ou une valeur spécifique du type peut être 7153 passée, le résultat est le même. Il est plus commun d'appliquer ces 7154 fonctions à la colonne d'une table ou à l'argument d'une fonction 7148 7155 qu'à un nom de type en dur, comme le suggèrent les exemples. 7149 7156 </para> … … 7280 7287 <row> 7281 7288 <entry><literal>&<|</literal> </entry> 7282 <entry>Ne s'étend pas au-dessus ?</entry>7289 <entry>Ne s'étend pas au-dessus de ?</entry> 7283 7290 <entry><literal>box '((0,0),(1,1))' &<| box '((0,0),(2,2))'</literal></entry> 7284 7291 </row> … … 7512 7519 7513 7520 <table id="functions-geometry-conv-table"> 7514 <title>Fonctions de conversion de type géométrique</title>7521 <title>Fonctions de conversion de types géométriques</title> 7515 7522 <tgroup cols="4"> 7516 7523 <thead> … … 7948 7955 <para> 7949 7956 Le type <type>macaddr</type> supporte aussi les opérateurs relationnels 7950 standard s(<literal>></literal>, <literal><=</literal>, etc.) de tri lexicographique.7957 standard (<literal>></literal>, <literal><=</literal>, etc.) de tri lexicographique. 7951 7958 </para> 7952 7959 … … 7963 7970 <indexterm zone="datatype-textsearch"> 7964 7971 <primary>recherche de texte</primary> 7965 <secondary>fonctions andopérateurs</secondary>7972 <secondary>fonctions et opérateurs</secondary> 7966 7973 </indexterm> 7967 7974 … … 7970 7977 <xref linkend="textsearch-functions-table"/> et 7971 7978 <xref linkend="textsearch-functions-debug-table"/> 7972 résume les fonctions et les opérateurs fournis p ar la recherche plein texte.7979 résume les fonctions et les opérateurs fournis pour la recherche plein texte. 7973 7980 Voir <xref linkend="textsearch"/> pour une explication détaillée sur la 7974 7981 fonctionnalité de recherche plein texte de … … 7977 7984 7978 7985 <table id="textsearch-operators-table"> 7979 <title>Opérateurs de larecherche plein texte</title>7986 <title>Opérateurs de recherche plein texte</title> 7980 7987 <tgroup cols="4"> 7981 7988 <colspec colnum="1" colwidth="0.4*"/> … … 8047 8054 <para> 8048 8055 Les opérateurs de confinement de <type>tsquery</type> considèrent seulement 8049 les lex emes listés dans les deux requêtes, ignorant les opérateurs de8056 les lexèmes listés dans les deux requêtes, ignorant les opérateurs de 8050 8057 combinaison. 8051 8058 </para> … … 8053 8060 8054 8061 <para> 8055 En plus des opérateurs montrés dans la table, les opérateurs de comparaison8062 En plus des opérateurs présentés dans la table, les opérateurs de comparaison 8056 8063 B-tree habituels (<literal>=</literal>, <literal><</literal>, etc) sont 8057 8064 définis pour les types <type>tsvector</type> et <type>tsquery</type>. Ils 8058 8065 ne sont pas très utiles dans le cadre de la recherche plein texte mais 8059 permettent la construction d'index UNIQUE sur des colonnes de ce type.8066 permettent la construction d'index d'unicité sur ces types de colonne. 8060 8067 </para> 8061 8068 … … 8118 8125 <entry><literal><function>numnode</function>(<type>tsquery</type>)</literal></entry> 8119 8126 <entry><type>integer</type></entry> 8120 <entry>nombre de lex emes et d'opérateurs dans <type>tsquery</type></entry>8127 <entry>nombre de lexèmes et d'opérateurs dans <type>tsquery</type></entry> 8121 8128 <entry><literal> numnode('(fat & rat) | cat'::tsquery)</literal></entry> 8122 8129 <entry><literal>5</literal></entry> … … 8174 8181 <entry><literal><function>tsvector_update_trigger</function>()</literal></entry> 8175 8182 <entry><type>trigger</type></entry> 8176 <entry>fonction trigger pour la mise à jour automatique de colonne <type>tsvector</type></entry>8183 <entry>fonction déclencheur pour la mise à jour automatique de colonne <type>tsvector</type></entry> 8177 8184 <entry><literal>CREATE TRIGGER ... tsvector_update_trigger(tsvcol, 'pg_catalog.swedish', title, body)</literal></entry> 8178 8185 <entry><literal></literal></entry> … … 8181 8188 <entry><literal><function>tsvector_update_trigger_column</function>()</literal></entry> 8182 8189 <entry><type>trigger</type></entry> 8183 <entry>fonction trigger pour la mise à jour automatique de colonne <type>tsvector</type></entry>8190 <entry>fonction déclencheur pour la mise à jour automatique de colonne <type>tsvector</type></entry> 8184 8191 <entry><literal>CREATE TRIGGER ... tsvector_update_trigger_column(tsvcol, configcol, title, body)</literal></entry> 8185 8192 <entry><literal></literal></entry> … … 8193 8200 <para> 8194 8201 Toutes les fonctions de recherche plein texte qui acceptent un argument 8195 <type>regconfig</type> optionel utilise ront la configuration spécifiée par8196 <xref linkend="guc-default-text-search-config"/> lorsque cet argument est8197 omis.8202 <type>regconfig</type> optionel utilisent la configuration indiqée par 8203 <xref linkend="guc-default-text-search-config"/> en cas d'omission de cet 8204 argument. 8198 8205 </para> 8199 8206 </note> … … 8201 8208 <para> 8202 8209 Les fonctions de <xref linkend="textsearch-functions-debug-table"/> 8203 sont listées séparément car elles ne sont pas utiles habituellement dans8204 les opérations quotidiennes de recherche plein texte. Elles sont utiles8205 pour le développement et le débogage de nouvelles configurations de8206 recherche plein texte.8210 sont listées séparément, car elles ne font pas partie des fonctions 8211 utilisées dans les opérations de recherche plein texte de tous les jours. 8212 Elles sont utiles pour le développement et le débogage de nouvelles 8213 configurations de recherche plein texte. 8207 8214 </para> 8208 8215 … … 8251 8258 <entry><literal><function>ts_token_type</function>(<replaceable class="parameter">nom_analyseur</replaceable> <type>text</type>, OUT <replaceable class="parameter">id_jeton</replaceable> <type>integer</type>, OUT <replaceable class="parameter">alias</replaceable> <type>text</type>, OUT <replaceable class="parameter">description</replaceable> <type>text</type>)</literal></entry> 8252 8259 <entry><type>setof record</type></entry> 8253 <entry>obtient des types de jeton définis par unanalyseur</entry>8260 <entry>obtient les types de jeton définis par l'analyseur</entry> 8254 8261 <entry><literal>ts_token_type('default')</literal></entry> 8255 8262 <entry><literal>(1,asciiword,"Word, all ASCII") ...</literal></entry> … … 8294 8301 8295 8302 <para> 8296 Un ensemble de fonction et expressions sont disponibles pour produire8297 du contenu XML à partir de données SQL. De là, elles conviennent8303 Un ensemble de fonctions et expressions de type fonction est disponible 8304 pour produire du contenu XML à partir de données SQL. En tant que telles, elles conviennent 8298 8305 particulièrement bien pour formater les résultats de requêtes en XML 8299 8306 à traiter dans les applications clientes. … … 8313 8320 <para> 8314 8321 La fonction <function>xmlcomment</function> crée une valeur XML contenant 8315 un commentaire XML avec, comme contenu, le texte spécifié. Le texte ne 8316 peut pas contenir <literal>--</literal> ou se terminer avec un 8317 <literal>-</literal> pour que la construction résultante soit un 8318 commentaire XML valide. Si l'argument vaut NULL, le résultat vaut NULL. 8322 un commentaire XML avec, comme contenu, le texte indiqué. Le texte ne 8323 peut pas contenir <literal>--</literal> ou se terminer par un 8324 <literal>-</literal> de sorte que que la construction résultante 8325 représente un commentaire XML valide. Si l'argument est NULL, le résultat 8326 est NULL. 8319 8327 </para> 8320 8328 … … 8346 8354 XML individuelles pour créer une valeur simple contenant un fragment de 8347 8355 contenu XML. Les valeurs NULL sont omises ; le résultat est NULL 8348 seulement s'il n'y a pas d'arguments différents deNULL.8356 seulement s'il n'y a pas d'arguments non NULL. 8349 8357 </para> 8350 8358 … … 8361 8369 8362 8370 <para> 8363 Les déclarations XML, si elles sont présentes, sont combinées ainsi. Si8371 Les déclarations XML, si elles sont présentes, sont combinées come suit. Si 8364 8372 toutes les valeurs en argument ont la même déclaration de version XML, 8365 8373 cette version est utilisée dans le résultat. Sinon aucune version n'est 8366 8374 utilisée. Si toutes les valeurs en argument ont la valeur de déclaration 8367 8375 « standalone » à <quote>yes</quote>, alors cette valeur est utilisée dans 8368 le résultat. Si toutes les valeurs en argument ont la valeur de déclaration 8369 « standalone » à <quote>no</quote>, alors cette valeur est utilisée dans 8370 le résultat. Sinon le résultat n'aura aucune déclaration « standalone ». 8371 Si le résultat est déterminé pour réclamer une déclaration « standalone » 8372 mais aucune déclaration de version, une déclaration de version 1.0 sera 8373 utilisée car le standard XML réclame qu'une déclaration XML contienne 8376 le résultat. Si toutes les valeurs en argument ont une valeur de déclaration 8377 « standalone » et qu'au moins l'une d'entre elles est <quote>no</quote>, alors 8378 cette valeur est utilisée dans 8379 le résultat. Sinon le résultat n'a aucune déclaration « standalone ». 8380 Si le résultat nécessite une déclaration « standalone » 8381 sans déclaration de version, une déclaration de version 1.0 est 8382 utilisée car le standard XML impose qu'une déclaration XML contienne 8374 8383 une déclaration de version. Les déclarations d'encodage sont ignorées et 8375 8384 supprimées dans tous les cas. … … 8428 8437 8429 8438 <para> 8430 Les noms d e l'élément et de l'attribut qui ne sont pas des noms XML valides8431 sont échappés pour remplacerles caractères indésirables par une8439 Les noms d'élément et d'attribut qui ne sont pas des noms XML valides 8440 sont modifiés en remplaçant les caractères indésirables par une 8432 8441 séquence <literal>_x<replaceable>HHHH</replaceable>_</literal>, où 8433 8442 <replaceable>HHHH</replaceable> est le codage Unicode du caractère en … … 8443 8452 8444 8453 <para> 8445 Un nom explicit d'attribut n'a pas besoin d'être spécifié si la valeur8454 Un nom explicit d'attribut n'a pas besoin d'être indiqué si la valeur 8446 8455 de l'attribut est la référence d'une colonne, auquel cas le nom de la 8447 colonne serautilisé comme nom de l'attribut par défaut. Dans tous les8448 autres cas, l'attribut doit se voir donner un nom explicite. Donc, cet8456 colonne est utilisé comme nom de l'attribut par défaut. Dans tous les 8457 autres cas, l'attribut doit avoir un nom explicite. Donc, cet 8449 8458 exemple est valide : 8450 8459 <screen> … … 8460 8469 8461 8470 <para> 8462 Si le contenu de l'élément n'est pas précisé, il est formaté suivant le8471 Si le contenu de l'élément est précisé, il est formaté en fonction du 8463 8472 type de données. Si le contenu est lui-même de type <type>xml</type>, des 8464 8473 documents XML complexes peuvent être construits. Par exemple : … … 8534 8543 8535 8544 <para> 8536 Notez que les arbres XML ne sont pas des documents XML valides s'ils sont8537 constitués de plus d'un élément. Donc, il pourrait êtreutile d'emballer8545 Les arbres XML ne sont pas des documents XML valides s'ils sont 8546 constitués de plus d'un élément. Il peut donc s'avérer utile d'emballer 8538 8547 les expressions <function>xmlforest</function> dans 8539 8548 <function>xmlelement</function>. … … 8585 8594 nœud racine d'une valeur XML. Si une version est indiquée, elle 8586 8595 remplace la valeur dans la déclaration de version. Si une valeur 8587 « standalone » est indiquée, elle remplace aussila valeur dans la8596 « standalone » est indiquée, elle remplace la valeur dans la 8588 8597 déclaration « standalone ». 8589 8598 </para> … … 8630 8639 8631 8640 <para> 8632 Pour traiter les valeurs du type <type>xml</type>, PostgreSQL proposela8641 Pour traiter les valeurs du type <type>xml</type>, PostgreSQL fournit la 8633 8642 fonction <function>xpath</function>, qui évalue les expressions XPath 1.0. 8634 8643 </para> … … 8647 8656 <para> 8648 8657 Le troisième argument de la fonction est un tableau de correspondances 8649 d 'espace de nom. Ce tableau doit avoir deux dimensions dont la seconde8650 a une longueur de2 (en fait, c'est un tableau de tableaux à exactement8658 de <foreignphrase>namespace</foreignphrase>. Ce tableau doit avoir deux dimensions dont la seconde 8659 a une longueur 2 (en fait, c'est un tableau de tableaux à exactement 8651 8660 deux éléments). Le premier élément de chaque entrée du tableau est le 8652 nom de l'espace de noms, le second étant l'URI de l'espace de noms. 8661 nom du <foreignphrase>namespace</foreignphrase>, le second étant l'URI du 8662 <foreignphrase>namespace</foreignphrase>. 8653 8663 </para> 8654 8664 … … 8684 8694 8685 8695 <para> 8686 <function>table_to_xml</function> transforme le contenu de la table ,8687 passée en argument grâce au paramètre <parameter>tbl</parameter>.8696 <function>table_to_xml</function> transforme le contenu de la table 8697 passée en argument (paramètre <parameter>tbl</parameter>). 8688 8698 <type>regclass</type> accepte des chaînes identifiant les tables en 8689 8699 utilisant la notation habituelle, incluant les qualifications possibles du … … 8695 8705 <parameter>cursor</parameter>. Cette variante est recommandée si la 8696 8706 transformation se fait sur de grosses tables car la valeur en résultat est 8697 construit en mémoire pour chaque fonction.8707 construite en mémoire pour chaque fonction. 8698 8708 </para> 8699 8709 … … 8745 8755 contenu XML discutées ci-dessus, en particulier 8746 8756 <function>xmlelement</function>, peuvent être utilisées pour modifier 8747 les résultats à votre convenance.8757 les résultats. 8748 8758 </para> 8749 8759 … … 8755 8765 <para> 8756 8766 Le paramètre <parameter>nulls</parameter> détermine si les valeurs NULL 8757 doivent être inclus en sortie. À true, les valeurs NULL dans les colonnes8767 doivent être incluses en sortie. À true, les valeurs NULL dans les colonnes 8758 8768 sont représentées ainsi : 8759 8769 <screen><
