fr: Translation updates REL_14_STABLE
authorGuillaume Lelarge <guillaume.lelarge@dalibo.com>
Sat, 20 Sep 2025 09:10:58 +0000 (11:10 +0200)
committerGuillaume Lelarge <guillaume.lelarge@dalibo.com>
Sat, 20 Sep 2025 09:10:58 +0000 (11:10 +0200)
fr/pg_dump.po
fr/pg_upgrade.po
fr/postgres.po
fr/psql.po

index 21a56509fa506134a1d32082369cdcfc8ac7c8c9..f1aa6e7be71a99241c62aba19947b2854822b391 100644 (file)
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 14\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2025-05-01 11:53+0000\n"
-"PO-Revision-Date: 2025-05-01 21:39+0200\n"
+"POT-Creation-Date: 2025-09-19 19:52+0000\n"
+"PO-Revision-Date: 2025-09-20 10:55+0200\n"
 "Last-Translator: Guillaume Lelarge <guillaume@lelarge.info>\n"
 "Language-Team: French <guillaume@lelarge.info>\n"
 "Language: fr\n"
@@ -18,7 +18,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Poedit 3.6\n"
+"X-Generator: Poedit 3.7\n"
 
 #: ../../../src/common/logging.c:259
 #, c-format
@@ -115,222 +115,222 @@ msgstr "le processus fils a été terminé par le signal %d : %s"
 msgid "child process exited with unrecognized status %d"
 msgstr "le processus fils a quitté avec un statut %d non reconnu"
 
-#: common.c:124
+#: common.c:127
 #, c-format
 msgid "reading extensions"
 msgstr "lecture des extensions"
 
-#: common.c:128
+#: common.c:131
 #, c-format
 msgid "identifying extension members"
 msgstr "identification des membres d'extension"
 
-#: common.c:131
+#: common.c:134
 #, c-format
 msgid "reading schemas"
 msgstr "lecture des schémas"
 
-#: common.c:141
+#: common.c:144
 #, c-format
 msgid "reading user-defined tables"
 msgstr "lecture des tables utilisateur"
 
-#: common.c:148
+#: common.c:151
 #, c-format
 msgid "reading user-defined functions"
 msgstr "lecture des fonctions utilisateur"
 
-#: common.c:153
+#: common.c:156
 #, c-format
 msgid "reading user-defined types"
 msgstr "lecture des types utilisateur"
 
-#: common.c:158
+#: common.c:161
 #, c-format
 msgid "reading procedural languages"
 msgstr "lecture des langages procéduraux"
 
-#: common.c:161
+#: common.c:164
 #, c-format
 msgid "reading user-defined aggregate functions"
 msgstr "lecture des fonctions d'agrégats utilisateur"
 
-#: common.c:164
+#: common.c:167
 #, c-format
 msgid "reading user-defined operators"
 msgstr "lecture des opérateurs utilisateur"
 
-#: common.c:168
+#: common.c:171
 #, c-format
 msgid "reading user-defined access methods"
 msgstr "lecture des méthodes d'accès définis par les utilisateurs"
 
-#: common.c:171
+#: common.c:175
 #, c-format
 msgid "reading user-defined operator classes"
 msgstr "lecture des classes d'opérateurs utilisateur"
 
-#: common.c:174
+#: common.c:178
 #, c-format
 msgid "reading user-defined operator families"
 msgstr "lecture des familles d'opérateurs utilisateur"
 
-#: common.c:177
+#: common.c:181
 #, c-format
 msgid "reading user-defined text search parsers"
 msgstr "lecture des analyseurs utilisateur pour la recherche plein texte"
 
-#: common.c:180
+#: common.c:184
 #, c-format
 msgid "reading user-defined text search templates"
 msgstr "lecture des modèles utilisateur pour la recherche plein texte"
 
-#: common.c:183
+#: common.c:187
 #, c-format
 msgid "reading user-defined text search dictionaries"
 msgstr "lecture des dictionnaires utilisateur pour la recherche plein texte"
 
-#: common.c:186
+#: common.c:190
 #, c-format
 msgid "reading user-defined text search configurations"
 msgstr "lecture des configurations utilisateur pour la recherche plein texte"
 
-#: common.c:189
+#: common.c:193
 #, c-format
 msgid "reading user-defined foreign-data wrappers"
 msgstr "lecture des wrappers de données distantes utilisateur"
 
-#: common.c:192
+#: common.c:196
 #, c-format
 msgid "reading user-defined foreign servers"
 msgstr "lecture des serveurs distants utilisateur"
 
-#: common.c:195
+#: common.c:199
 #, c-format
 msgid "reading default privileges"
 msgstr "lecture des droits par défaut"
 
-#: common.c:198
+#: common.c:202
 #, c-format
 msgid "reading user-defined collations"
 msgstr "lecture des collationnements utilisateurs"
 
-#: common.c:202
+#: common.c:206
 #, c-format
 msgid "reading user-defined conversions"
 msgstr "lecture des conversions utilisateur"
 
-#: common.c:205
+#: common.c:209
 #, c-format
 msgid "reading type casts"
 msgstr "lecture des conversions de type"
 
-#: common.c:208
+#: common.c:212
 #, c-format
 msgid "reading transforms"
 msgstr "lecture des transformations"
 
-#: common.c:211
+#: common.c:215
 #, c-format
 msgid "reading table inheritance information"
 msgstr "lecture des informations d'héritage des tables"
 
-#: common.c:214
+#: common.c:218
 #, c-format
 msgid "reading event triggers"
 msgstr "lecture des triggers sur évènement"
 
-#: common.c:218
+#: common.c:222
 #, c-format
 msgid "finding extension tables"
 msgstr "recherche des tables d'extension"
 
-#: common.c:222
+#: common.c:226
 #, c-format
 msgid "finding inheritance relationships"
 msgstr "recherche des relations d'héritage"
 
-#: common.c:225
+#: common.c:229
 #, c-format
 msgid "reading column info for interesting tables"
 msgstr "lecture des informations de colonnes des tables intéressantes"
 
-#: common.c:228
+#: common.c:232
 #, c-format
 msgid "flagging inherited columns in subtables"
 msgstr "marquage des colonnes héritées dans les sous-tables"
 
-#: common.c:231
+#: common.c:235
 #, c-format
 msgid "reading partitioning data"
 msgstr "lecture des données de partitionnement"
 
-#: common.c:234
+#: common.c:238
 #, c-format
 msgid "reading indexes"
 msgstr "lecture des index"
 
-#: common.c:237
+#: common.c:241
 #, c-format
 msgid "flagging indexes in partitioned tables"
 msgstr "décrit les index des tables partitionnées"
 
-#: common.c:240
+#: common.c:244
 #, c-format
 msgid "reading extended statistics"
 msgstr "lecture des statistiques étendues"
 
-#: common.c:243
+#: common.c:247
 #, c-format
 msgid "reading constraints"
 msgstr "lecture des contraintes"
 
-#: common.c:246
+#: common.c:250
 #, c-format
 msgid "reading triggers"
 msgstr "lecture des triggers"
 
-#: common.c:249
+#: common.c:253
 #, c-format
 msgid "reading rewrite rules"
 msgstr "lecture des règles de réécriture"
 
-#: common.c:252
+#: common.c:256
 #, c-format
 msgid "reading policies"
 msgstr "lecture des politiques"
 
-#: common.c:255
+#: common.c:259
 #, c-format
 msgid "reading publications"
 msgstr "lecture des publications"
 
-#: common.c:260
+#: common.c:264
 #, c-format
 msgid "reading publication membership"
 msgstr "lecture des appartenances aux publications"
 
-#: common.c:263
+#: common.c:267
 #, c-format
 msgid "reading subscriptions"
 msgstr "lecture des souscriptions"
 
-#: common.c:340
+#: common.c:344
 #, c-format
 msgid "invalid number of parents %d for table \"%s\""
 msgstr "nombre de parents invalide (%d) pour la table « %s »"
 
-#: common.c:1102
+#: common.c:1117
 #, c-format
 msgid "failed sanity check, parent OID %u of table \"%s\" (OID %u) not found"
 msgstr "vérification échouée, OID %u parent de la table « %s » (OID %u) introuvable"
 
-#: common.c:1144
+#: common.c:1159
 #, c-format
 msgid "could not parse numeric array \"%s\": too many numbers"
 msgstr "n'a pas pu analyser le tableau numérique « %s » : trop de nombres"
 
-#: common.c:1159
+#: common.c:1174
 #, c-format
 msgid "could not parse numeric array \"%s\": invalid character in number"
 msgstr "n'a pas pu analyser le tableau numérique « %s » : caractère invalide dans le nombre"
@@ -461,7 +461,7 @@ msgstr "pgpipe: n'a pas pu se connecter au socket: code d'erreur %d"
 msgid "pgpipe: could not accept connection: error code %d"
 msgstr "pgpipe: n'a pas pu accepter de connexion: code d'erreur %d"
 
-#: pg_backup_archiver.c:279 pg_backup_archiver.c:1632
+#: pg_backup_archiver.c:279 pg_backup_archiver.c:1651
 #, c-format
 msgid "could not close output file: %m"
 msgstr "n'a pas pu fermer le fichier en sortie : %m"
@@ -506,385 +506,385 @@ msgstr "les connexions directes à la base de données ne sont pas supportées d
 msgid "implied data-only restore"
 msgstr "a impliqué une restauration des données uniquement"
 
-#: pg_backup_archiver.c:520
+#: pg_backup_archiver.c:531
 #, c-format
 msgid "dropping %s %s"
 msgstr "suppression de %s %s"
 
-#: pg_backup_archiver.c:615
+#: pg_backup_archiver.c:626
 #, c-format
 msgid "could not find where to insert IF EXISTS in statement \"%s\""
 msgstr "n'a pas pu trouver où insérer IF EXISTS dans l'instruction « %s »"
 
-#: pg_backup_archiver.c:771 pg_backup_archiver.c:773
+#: pg_backup_archiver.c:790 pg_backup_archiver.c:792
 #, c-format
 msgid "warning from original dump file: %s"
 msgstr "message d'avertissement du fichier de sauvegarde original : %s"
 
-#: pg_backup_archiver.c:788
+#: pg_backup_archiver.c:807
 #, c-format
 msgid "creating %s \"%s.%s\""
 msgstr "création de %s « %s.%s »"
 
-#: pg_backup_archiver.c:791
+#: pg_backup_archiver.c:810
 #, c-format
 msgid "creating %s \"%s\""
 msgstr "création de %s « %s »"
 
-#: pg_backup_archiver.c:841
+#: pg_backup_archiver.c:860
 #, c-format
 msgid "connecting to new database \"%s\""
 msgstr "connexion à la nouvelle base de données « %s »"
 
-#: pg_backup_archiver.c:868
+#: pg_backup_archiver.c:887
 #, c-format
 msgid "processing %s"
 msgstr "traitement de %s"
 
-#: pg_backup_archiver.c:890
+#: pg_backup_archiver.c:909
 #, c-format
 msgid "processing data for table \"%s.%s\""
 msgstr "traitement des données de la table « %s.%s »"
 
-#: pg_backup_archiver.c:963
+#: pg_backup_archiver.c:982
 #, c-format
 msgid "executing %s %s"
 msgstr "exécution de %s %s"
 
-#: pg_backup_archiver.c:1002
+#: pg_backup_archiver.c:1021
 #, c-format
 msgid "disabling triggers for %s"
 msgstr "désactivation des triggers pour %s"
 
-#: pg_backup_archiver.c:1028
+#: pg_backup_archiver.c:1047
 #, c-format
 msgid "enabling triggers for %s"
 msgstr "activation des triggers pour %s"
 
-#: pg_backup_archiver.c:1093
+#: pg_backup_archiver.c:1112
 #, c-format
 msgid "internal error -- WriteData cannot be called outside the context of a DataDumper routine"
 msgstr "erreur interne -- WriteData ne peut pas être appelé en dehors du contexte de la routine DataDumper"
 
-#: pg_backup_archiver.c:1279
+#: pg_backup_archiver.c:1298
 #, c-format
 msgid "large-object output not supported in chosen format"
 msgstr "la sauvegarde des « Large Objects » n'est pas supportée dans le format choisi"
 
-#: pg_backup_archiver.c:1337
+#: pg_backup_archiver.c:1356
 #, c-format
 msgid "restored %d large object"
 msgid_plural "restored %d large objects"
 msgstr[0] "restauration de %d « Large Object »"
 msgstr[1] "restauration de %d « Large Objects »"
 
-#: pg_backup_archiver.c:1358 pg_backup_tar.c:733
+#: pg_backup_archiver.c:1377 pg_backup_tar.c:733
 #, c-format
 msgid "restoring large object with OID %u"
 msgstr "restauration du « Large Object » d'OID %u"
 
-#: pg_backup_archiver.c:1370
+#: pg_backup_archiver.c:1389
 #, c-format
 msgid "could not create large object %u: %s"
 msgstr "n'a pas pu créer le « Large Object » %u : %s"
 
-#: pg_backup_archiver.c:1375 pg_dump.c:3816
+#: pg_backup_archiver.c:1394 pg_dump.c:3847
 #, c-format
 msgid "could not open large object %u: %s"
 msgstr "n'a pas pu ouvrir le « Large Object » %u : %s"
 
-#: pg_backup_archiver.c:1431
+#: pg_backup_archiver.c:1450
 #, c-format
 msgid "could not open TOC file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier TOC « %s » : %m"
 
-#: pg_backup_archiver.c:1459
+#: pg_backup_archiver.c:1478
 #, c-format
 msgid "line ignored: %s"
 msgstr "ligne ignorée : %s"
 
-#: pg_backup_archiver.c:1466
+#: pg_backup_archiver.c:1485
 #, c-format
 msgid "could not find entry for ID %d"
 msgstr "n'a pas pu trouver l'entrée pour l'ID %d"
 
-#: pg_backup_archiver.c:1489 pg_backup_directory.c:222
+#: pg_backup_archiver.c:1508 pg_backup_directory.c:222
 #: pg_backup_directory.c:599
 #, c-format
 msgid "could not close TOC file: %m"
 msgstr "n'a pas pu fermer le fichier TOC : %m"
 
-#: pg_backup_archiver.c:1603 pg_backup_custom.c:156 pg_backup_directory.c:332
+#: pg_backup_archiver.c:1622 pg_backup_custom.c:156 pg_backup_directory.c:332
 #: pg_backup_directory.c:586 pg_backup_directory.c:649
-#: pg_backup_directory.c:668 pg_dumpall.c:489
+#: pg_backup_directory.c:668 pg_dumpall.c:514
 #, c-format
 msgid "could not open output file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier de sauvegarde « %s » : %m"
 
-#: pg_backup_archiver.c:1605 pg_backup_custom.c:162
+#: pg_backup_archiver.c:1624 pg_backup_custom.c:162
 #, c-format
 msgid "could not open output file: %m"
 msgstr "n'a pas pu ouvrir le fichier de sauvegarde : %m"
 
-#: pg_backup_archiver.c:1699
+#: pg_backup_archiver.c:1718
 #, c-format
 msgid "wrote %zu byte of large object data (result = %d)"
 msgid_plural "wrote %zu bytes of large object data (result = %d)"
 msgstr[0] "a écrit %zu octet de données d'un « Large Object » (résultat = %d)"
 msgstr[1] "a écrit %zu octets de données d'un « Large Object » (résultat = %d)"
 
-#: pg_backup_archiver.c:1705
+#: pg_backup_archiver.c:1724
 #, c-format
 msgid "could not write to large object: %s"
 msgstr "n'a pas pu écrire dans le « Large Object » : %s"
 
-#: pg_backup_archiver.c:1795
+#: pg_backup_archiver.c:1814
 #, c-format
 msgid "while INITIALIZING:"
 msgstr "pendant l'initialisation (« INITIALIZING ») :"
 
-#: pg_backup_archiver.c:1800
+#: pg_backup_archiver.c:1819
 #, c-format
 msgid "while PROCESSING TOC:"
 msgstr "pendant le traitement de la TOC (« PROCESSING TOC ») :"
 
-#: pg_backup_archiver.c:1805
+#: pg_backup_archiver.c:1824
 #, c-format
 msgid "while FINALIZING:"
 msgstr "pendant la finalisation (« FINALIZING ») :"
 
-#: pg_backup_archiver.c:1810
+#: pg_backup_archiver.c:1829
 #, c-format
 msgid "from TOC entry %d; %u %u %s %s %s"
 msgstr "de l'entrée TOC %d ; %u %u %s %s %s"
 
-#: pg_backup_archiver.c:1886
+#: pg_backup_archiver.c:1905
 #, c-format
 msgid "bad dumpId"
 msgstr "mauvais dumpId"
 
-#: pg_backup_archiver.c:1907
+#: pg_backup_archiver.c:1926
 #, c-format
 msgid "bad table dumpId for TABLE DATA item"
 msgstr "mauvais dumpId de table pour l'élément TABLE DATA"
 
-#: pg_backup_archiver.c:1999
+#: pg_backup_archiver.c:2018
 #, c-format
 msgid "unexpected data offset flag %d"
 msgstr "drapeau de décalage de données inattendu %d"
 
-#: pg_backup_archiver.c:2012
+#: pg_backup_archiver.c:2031
 #, c-format
 msgid "file offset in dump file is too large"
 msgstr "le décalage dans le fichier de sauvegarde est trop important"
 
-#: pg_backup_archiver.c:2150 pg_backup_archiver.c:2160
+#: pg_backup_archiver.c:2169 pg_backup_archiver.c:2179
 #, c-format
 msgid "directory name too long: \"%s\""
 msgstr "nom du répertoire trop long : « %s »"
 
-#: pg_backup_archiver.c:2168
+#: pg_backup_archiver.c:2187
 #, c-format
 msgid "directory \"%s\" does not appear to be a valid archive (\"toc.dat\" does not exist)"
 msgstr "le répertoire « %s » ne semble pas être une archive valide (« toc.dat » n'existe pas)"
 
-#: pg_backup_archiver.c:2176 pg_backup_custom.c:173 pg_backup_custom.c:807
+#: pg_backup_archiver.c:2195 pg_backup_custom.c:173 pg_backup_custom.c:807
 #: pg_backup_directory.c:207 pg_backup_directory.c:395
 #, c-format
 msgid "could not open input file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier en entrée « %s » : %m"
 
-#: pg_backup_archiver.c:2183 pg_backup_custom.c:179
+#: pg_backup_archiver.c:2202 pg_backup_custom.c:179
 #, c-format
 msgid "could not open input file: %m"
 msgstr "n'a pas pu ouvrir le fichier en entrée : %m"
 
-#: pg_backup_archiver.c:2189
+#: pg_backup_archiver.c:2208
 #, c-format
 msgid "could not read input file: %m"
 msgstr "n'a pas pu lire le fichier en entrée : %m"
 
-#: pg_backup_archiver.c:2191
+#: pg_backup_archiver.c:2210
 #, c-format
 msgid "input file is too short (read %lu, expected 5)"
 msgstr "le fichier en entrée est trop petit (%lu lus, 5 attendus)"
 
-#: pg_backup_archiver.c:2223
+#: pg_backup_archiver.c:2242
 #, c-format
 msgid "input file appears to be a text format dump. Please use psql."
 msgstr "Le fichier en entrée semble être une sauvegarde au format texte. Merci d'utiliser psql."
 
-#: pg_backup_archiver.c:2229
+#: pg_backup_archiver.c:2248
 #, c-format
 msgid "input file does not appear to be a valid archive (too short?)"
 msgstr "le fichier en entrée ne semble pas être une archive valide (trop petit ?)"
 
-#: pg_backup_archiver.c:2235
+#: pg_backup_archiver.c:2254
 #, c-format
 msgid "input file does not appear to be a valid archive"
 msgstr "le fichier en entrée ne semble pas être une archive valide"
 
-#: pg_backup_archiver.c:2244
+#: pg_backup_archiver.c:2263
 #, c-format
 msgid "could not close input file: %m"
 msgstr "n'a pas pu fermer le fichier en entrée : %m"
 
-#: pg_backup_archiver.c:2361
+#: pg_backup_archiver.c:2380
 #, c-format
 msgid "unrecognized file format \"%d\""
 msgstr "format de fichier « %d » non reconnu"
 
-#: pg_backup_archiver.c:2443 pg_backup_archiver.c:4490
+#: pg_backup_archiver.c:2462 pg_backup_archiver.c:4514
 #, c-format
 msgid "finished item %d %s %s"
 msgstr "élément terminé %d %s %s"
 
-#: pg_backup_archiver.c:2447 pg_backup_archiver.c:4503
+#: pg_backup_archiver.c:2466 pg_backup_archiver.c:4527
 #, c-format
 msgid "worker process failed: exit code %d"
 msgstr "échec du processus worker : code de sortie %d"
 
-#: pg_backup_archiver.c:2567
+#: pg_backup_archiver.c:2586
 #, c-format
 msgid "entry ID %d out of range -- perhaps a corrupt TOC"
 msgstr "ID %d de l'entrée en dehors de la plage -- peut-être un TOC corrompu"
 
-#: pg_backup_archiver.c:2634
+#: pg_backup_archiver.c:2653
 #, c-format
 msgid "restoring tables WITH OIDS is not supported anymore"
 msgstr "la restauration des tables avec WITH OIDS n'est plus supportée"
 
-#: pg_backup_archiver.c:2716
+#: pg_backup_archiver.c:2735
 #, c-format
 msgid "unrecognized encoding \"%s\""
 msgstr "encodage « %s » non reconnu"
 
-#: pg_backup_archiver.c:2722
+#: pg_backup_archiver.c:2741
 #, c-format
 msgid "invalid ENCODING item: %s"
 msgstr "élément ENCODING invalide : %s"
 
-#: pg_backup_archiver.c:2740
+#: pg_backup_archiver.c:2759
 #, c-format
 msgid "invalid STDSTRINGS item: %s"
 msgstr "élément STDSTRINGS invalide : %s"
 
-#: pg_backup_archiver.c:2765
+#: pg_backup_archiver.c:2784
 #, c-format
 msgid "schema \"%s\" not found"
 msgstr "schéma « %s » non trouvé"
 
-#: pg_backup_archiver.c:2772
+#: pg_backup_archiver.c:2791
 #, c-format
 msgid "table \"%s\" not found"
 msgstr "table « %s » non trouvée"
 
-#: pg_backup_archiver.c:2779
+#: pg_backup_archiver.c:2798
 #, c-format
 msgid "index \"%s\" not found"
 msgstr "index « %s » non trouvé"
 
-#: pg_backup_archiver.c:2786
+#: pg_backup_archiver.c:2805
 #, c-format
 msgid "function \"%s\" not found"
 msgstr "fonction « %s » non trouvée"
 
-#: pg_backup_archiver.c:2793
+#: pg_backup_archiver.c:2812
 #, c-format
 msgid "trigger \"%s\" not found"
 msgstr "trigger « %s » non trouvé"
 
-#: pg_backup_archiver.c:3207
+#: pg_backup_archiver.c:3257
 #, c-format
 msgid "could not set session user to \"%s\": %s"
 msgstr "n'a pas pu initialiser la session utilisateur à « %s »: %s"
 
-#: pg_backup_archiver.c:3339
+#: pg_backup_archiver.c:3399
 #, c-format
 msgid "could not set search_path to \"%s\": %s"
 msgstr "n'a pas pu configurer search_path à « %s » : %s"
 
-#: pg_backup_archiver.c:3401
+#: pg_backup_archiver.c:3461
 #, c-format
 msgid "could not set default_tablespace to %s: %s"
 msgstr "n'a pas pu configurer default_tablespace à %s : %s"
 
-#: pg_backup_archiver.c:3446
+#: pg_backup_archiver.c:3506
 #, c-format
 msgid "could not set default_table_access_method: %s"
 msgstr "n'a pas pu configurer la méthode default_table_access_method à %s"
 
-#: pg_backup_archiver.c:3538 pg_backup_archiver.c:3696
+#: pg_backup_archiver.c:3598 pg_backup_archiver.c:3756
 #, c-format
 msgid "don't know how to set owner for object type \"%s\""
 msgstr "ne sait pas comment initialiser le propriétaire du type d'objet « %s »"
 
-#: pg_backup_archiver.c:3799
+#: pg_backup_archiver.c:3823
 #, c-format
 msgid "did not find magic string in file header"
 msgstr "n'a pas trouver la chaîne magique dans le fichier d'en-tête"
 
-#: pg_backup_archiver.c:3813
+#: pg_backup_archiver.c:3837
 #, c-format
 msgid "unsupported version (%d.%d) in file header"
 msgstr "version non supportée (%d.%d) dans le fichier d'en-tête"
 
-#: pg_backup_archiver.c:3818
+#: pg_backup_archiver.c:3842
 #, c-format
 msgid "sanity check on integer size (%lu) failed"
 msgstr "échec de la vérification sur la taille de l'entier (%lu)"
 
-#: pg_backup_archiver.c:3822
+#: pg_backup_archiver.c:3846
 #, c-format
 msgid "archive was made on a machine with larger integers, some operations might fail"
 msgstr "l'archive a été créée sur une machine disposant d'entiers plus larges, certaines opérations peuvent échouer"
 
-#: pg_backup_archiver.c:3832
+#: pg_backup_archiver.c:3856
 #, c-format
 msgid "expected format (%d) differs from format found in file (%d)"
 msgstr "le format attendu (%d) diffère du format du fichier (%d)"
 
-#: pg_backup_archiver.c:3847
+#: pg_backup_archiver.c:3871
 #, c-format
 msgid "archive is compressed, but this installation does not support compression -- no data will be available"
 msgstr "l'archive est compressée mais cette installation ne supporte pas la compression -- aucune donnée ne sera disponible"
 
-#: pg_backup_archiver.c:3881
+#: pg_backup_archiver.c:3905
 #, c-format
 msgid "invalid creation date in header"
 msgstr "date de création invalide dans l'en-tête"
 
-#: pg_backup_archiver.c:4015
+#: pg_backup_archiver.c:4039
 #, c-format
 msgid "processing item %d %s %s"
 msgstr "traitement de l'élément %d %s %s"
 
-#: pg_backup_archiver.c:4094
+#: pg_backup_archiver.c:4118
 #, c-format
 msgid "entering main parallel loop"
 msgstr "entrée dans la boucle parallèle principale"
 
-#: pg_backup_archiver.c:4105
+#: pg_backup_archiver.c:4129
 #, c-format
 msgid "skipping item %d %s %s"
 msgstr "omission de l'élément %d %s %s"
 
-#: pg_backup_archiver.c:4114
+#: pg_backup_archiver.c:4138
 #, c-format
 msgid "launching item %d %s %s"
 msgstr "lancement de l'élément %d %s %s"
 
-#: pg_backup_archiver.c:4168
+#: pg_backup_archiver.c:4192
 #, c-format
 msgid "finished main parallel loop"
 msgstr "fin de la boucle parallèle principale"
 
-#: pg_backup_archiver.c:4204
+#: pg_backup_archiver.c:4228
 #, c-format
 msgid "processing missed item %d %s %s"
 msgstr "traitement de l'élément manquant %d %s %s"
 
-#: pg_backup_archiver.c:4809
+#: pg_backup_archiver.c:4833
 #, c-format
 msgid "table \"%s\" could not be created, will not restore its data"
 msgstr "la table « %s » n'a pas pu être créée, ses données ne seront pas restaurées"
@@ -980,12 +980,12 @@ msgstr "compression activée"
 msgid "could not get server_version from libpq"
 msgstr "n'a pas pu obtenir server_version de libpq"
 
-#: pg_backup_db.c:53 pg_dumpall.c:1863
+#: pg_backup_db.c:53 pg_dumpall.c:1912
 #, c-format
 msgid "server version: %s; %s version: %s"
 msgstr "version du serveur : %s ; %s version : %s"
 
-#: pg_backup_db.c:55 pg_dumpall.c:1865
+#: pg_backup_db.c:55 pg_dumpall.c:1914
 #, c-format
 msgid "aborting because of server version mismatch"
 msgstr "annulation à cause de la différence des versions"
@@ -995,7 +995,7 @@ msgstr "annulation à cause de la différence des versions"
 msgid "already connected to a database"
 msgstr "déjà connecté à une base de données"
 
-#: pg_backup_db.c:132 pg_backup_db.c:182 pg_dumpall.c:1692 pg_dumpall.c:1803
+#: pg_backup_db.c:132 pg_backup_db.c:182 pg_dumpall.c:1741 pg_dumpall.c:1852
 msgid "Password: "
 msgstr "Mot de passe : "
 
@@ -1009,17 +1009,17 @@ msgstr "n'a pas pu se connecter à la base de données"
 msgid "reconnection failed: %s"
 msgstr "échec de la reconnexion : %s"
 
-#: pg_backup_db.c:194 pg_backup_db.c:269 pg_dumpall.c:1723 pg_dumpall.c:1813
+#: pg_backup_db.c:194 pg_backup_db.c:269 pg_dumpall.c:1772 pg_dumpall.c:1862
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_backup_db.c:276 pg_dumpall.c:1926 pg_dumpall.c:1949
+#: pg_backup_db.c:276 pg_dumpall.c:1975 pg_dumpall.c:1998
 #, c-format
 msgid "query failed: %s"
 msgstr "échec de la requête : %s"
 
-#: pg_backup_db.c:278 pg_dumpall.c:1927 pg_dumpall.c:1950
+#: pg_backup_db.c:278 pg_dumpall.c:1976 pg_dumpall.c:1999
 #, c-format
 msgid "query was: %s"
 msgstr "la requête était : %s"
@@ -1055,7 +1055,7 @@ msgstr "erreur renvoyée par PQputCopyEnd : %s"
 msgid "COPY failed for table \"%s\": %s"
 msgstr "COPY échoué pour la table « %s » : %s"
 
-#: pg_backup_db.c:525 pg_dump.c:2166
+#: pg_backup_db.c:525 pg_dump.c:2194
 #, c-format
 msgid "unexpected extra results during COPY of table \"%s\""
 msgstr "résultats supplémentaires non attendus durant l'exécution de COPY sur la table « %s »"
@@ -1241,10 +1241,10 @@ msgstr "en-tête tar corrompu trouvé dans %s (%d attendu, %d calculé ) à la p
 msgid "unrecognized section name: \"%s\""
 msgstr "nom de section non reconnu : « %s »"
 
-#: pg_backup_utils.c:55 pg_dump.c:627 pg_dump.c:644 pg_dumpall.c:341
-#: pg_dumpall.c:351 pg_dumpall.c:360 pg_dumpall.c:369 pg_dumpall.c:377
-#: pg_dumpall.c:391 pg_dumpall.c:469 pg_restore.c:284 pg_restore.c:300
-#: pg_restore.c:318
+#: pg_backup_utils.c:55 pg_dump.c:632 pg_dump.c:649 pg_dumpall.c:350
+#: pg_dumpall.c:360 pg_dumpall.c:369 pg_dumpall.c:378 pg_dumpall.c:386
+#: pg_dumpall.c:400 pg_dumpall.c:494 pg_restore.c:289 pg_restore.c:305
+#: pg_restore.c:323
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Essayer « %s --help » pour plus d'informations.\n"
@@ -1254,72 +1254,87 @@ msgstr "Essayer « %s --help » pour plus d'informations.\n"
 msgid "out of on_exit_nicely slots"
 msgstr "plus d'emplacements on_exit_nicely"
 
-#: pg_dump.c:553
+#: pg_dump.c:554
 #, c-format
 msgid "compression level must be in range 0..9"
 msgstr "le niveau de compression doit être compris entre 0 et 9"
 
-#: pg_dump.c:591
+#: pg_dump.c:592
 #, c-format
 msgid "extra_float_digits must be in range -15..3"
 msgstr "extra_float_digits doit être dans l'intervalle -15 à 3"
 
-#: pg_dump.c:614
+#: pg_dump.c:615
 #, c-format
 msgid "rows-per-insert must be in range %d..%d"
 msgstr "le nombre de lignes par insertion doit être compris entre %d et %d"
 
-#: pg_dump.c:642 pg_dumpall.c:349 pg_restore.c:298
+#: pg_dump.c:647 pg_dumpall.c:358 pg_restore.c:303
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "trop d'arguments en ligne de commande (le premier étant « %s »)"
 
-#: pg_dump.c:663 pg_restore.c:327
+#: pg_dump.c:668 pg_restore.c:357
 #, c-format
 msgid "options -s/--schema-only and -a/--data-only cannot be used together"
 msgstr "les options « -s/--schema-only » et « -a/--data-only » ne peuvent pas être utilisées ensemble"
 
-#: pg_dump.c:668
+#: pg_dump.c:673
 #, c-format
 msgid "options -s/--schema-only and --include-foreign-data cannot be used together"
 msgstr "les options « -s/--schema-only » et « --include-foreign-data » ne peuvent pas être utilisées ensemble"
 
-#: pg_dump.c:671
+#: pg_dump.c:676
 #, c-format
 msgid "option --include-foreign-data is not supported with parallel backup"
 msgstr "l'option --include-foreign-data n'est pas supportée avec une sauvegarde parallélisée"
 
-#: pg_dump.c:675 pg_restore.c:333
+#: pg_dump.c:680 pg_restore.c:363
 #, c-format
 msgid "options -c/--clean and -a/--data-only cannot be used together"
 msgstr "les options « -c/--clean » et « -a/--data-only » ne peuvent pas être utilisées ensemble"
 
-#: pg_dump.c:680 pg_dumpall.c:384 pg_restore.c:382
+#: pg_dump.c:685 pg_dumpall.c:393 pg_restore.c:412
 #, c-format
 msgid "option --if-exists requires option -c/--clean"
 msgstr "l'option --if-exists nécessite l'option -c/--clean"
 
-#: pg_dump.c:687
+#: pg_dump.c:692
 #, c-format
 msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts"
 msgstr "l'option --on-conflict-do-nothing requiert l'option --inserts, --rows-per-insert, ou --column-inserts"
 
-#: pg_dump.c:709
+#: pg_dump.c:708 pg_dumpall.c:456 pg_restore.c:345
+#, c-format
+msgid "could not generate restrict key"
+msgstr "n'a pas pu générer la clé de restriction"
+
+#: pg_dump.c:710 pg_dumpall.c:461 pg_restore.c:350
+#, c-format
+msgid "invalid restrict key"
+msgstr "clé de restriction invalide"
+
+#: pg_dump.c:713
+#, c-format
+msgid "option --restrict-key can only be used with --format=plain"
+msgstr "l'option --restrict-key peut seulement être utilisée avec --format=plain"
+
+#: pg_dump.c:728
 #, c-format
 msgid "requested compression not available in this installation -- archive will be uncompressed"
 msgstr "la compression requise n'est pas disponible avec cette installation -- l'archive ne sera pas compressée"
 
-#: pg_dump.c:730 pg_restore.c:349
+#: pg_dump.c:749 pg_restore.c:379
 #, c-format
 msgid "invalid number of parallel jobs"
 msgstr "nombre de jobs parallèles invalide"
 
-#: pg_dump.c:734
+#: pg_dump.c:753
 #, c-format
 msgid "parallel backup only supported by the directory format"
 msgstr "la sauvegarde parallélisée n'est supportée qu'avec le format directory"
 
-#: pg_dump.c:789
+#: pg_dump.c:808
 #, c-format
 msgid ""
 "Synchronized snapshots are not supported by this server version.\n"
@@ -1330,32 +1345,32 @@ msgstr ""
 "Lancez avec --no-synchronized-snapshots à la place si vous n'avez pas besoin\n"
 "de snapshots synchronisés."
 
-#: pg_dump.c:795
+#: pg_dump.c:814
 #, c-format
 msgid "Exported snapshots are not supported by this server version."
 msgstr "Les images exportées de la base ne sont pas supportées par cette version du serveur."
 
-#: pg_dump.c:807
+#: pg_dump.c:826
 #, c-format
 msgid "last built-in OID is %u"
 msgstr "le dernier OID interne est %u"
 
-#: pg_dump.c:816
+#: pg_dump.c:835
 #, c-format
 msgid "no matching schemas were found"
 msgstr "aucun schéma correspondant n'a été trouvé"
 
-#: pg_dump.c:830
+#: pg_dump.c:849
 #, c-format
 msgid "no matching tables were found"
 msgstr "aucune table correspondante n'a été trouvée"
 
-#: pg_dump.c:852
+#: pg_dump.c:871
 #, c-format
 msgid "no matching extensions were found"
 msgstr "aucune extension correspondante n'a été trouvée"
 
-#: pg_dump.c:1022
+#: pg_dump.c:1042
 #, c-format
 msgid ""
 "%s dumps a database as a text file or to other formats.\n"
@@ -1365,17 +1380,17 @@ msgstr ""
 "formats.\n"
 "\n"
 
-#: pg_dump.c:1023 pg_dumpall.c:623 pg_restore.c:462
+#: pg_dump.c:1043 pg_dumpall.c:664 pg_restore.c:492
 #, c-format
 msgid "Usage:\n"
 msgstr "Usage :\n"
 
-#: pg_dump.c:1024
+#: pg_dump.c:1044
 #, c-format
 msgid "  %s [OPTION]... [DBNAME]\n"
 msgstr "  %s [OPTION]... [BASE]\n"
 
-#: pg_dump.c:1026 pg_dumpall.c:626 pg_restore.c:465
+#: pg_dump.c:1046 pg_dumpall.c:667 pg_restore.c:495
 #, c-format
 msgid ""
 "\n"
@@ -1384,12 +1399,12 @@ msgstr ""
 "\n"
 "Options générales :\n"
 
-#: pg_dump.c:1027
+#: pg_dump.c:1047
 #, c-format
 msgid "  -f, --file=FILENAME          output file or directory name\n"
 msgstr "  -f, --file=FICHIER           nom du fichier ou du répertoire en sortie\n"
 
-#: pg_dump.c:1028
+#: pg_dump.c:1048
 #, c-format
 msgid ""
 "  -F, --format=c|d|t|p         output file format (custom, directory, tar,\n"
@@ -1398,50 +1413,50 @@ msgstr ""
 "  -F, --format=c|d|t|p         format du fichier de sortie (personnalisé,\n"
 "                               répertoire, tar, texte (par défaut))\n"
 
-#: pg_dump.c:1030
+#: pg_dump.c:1050
 #, c-format
 msgid "  -j, --jobs=NUM               use this many parallel jobs to dump\n"
 msgstr ""
 "  -j, --jobs=NOMBRE            utilise ce nombre de jobs en parallèle pour la\n"
 "                               sauvegarde\n"
 
-#: pg_dump.c:1031 pg_dumpall.c:628
+#: pg_dump.c:1051 pg_dumpall.c:669
 #, c-format
 msgid "  -v, --verbose                verbose mode\n"
 msgstr "  -v, --verbose                mode verbeux\n"
 
-#: pg_dump.c:1032 pg_dumpall.c:629
+#: pg_dump.c:1052 pg_dumpall.c:670
 #, c-format
 msgid "  -V, --version                output version information, then exit\n"
 msgstr "  -V, --version                affiche la version puis quitte\n"
 
-#: pg_dump.c:1033
+#: pg_dump.c:1053
 #, c-format
 msgid "  -Z, --compress=0-9           compression level for compressed formats\n"
 msgstr ""
 "  -Z, --compress=0-9           niveau de compression pour les formats\n"
 "                               compressés\n"
 
-#: pg_dump.c:1034 pg_dumpall.c:630
+#: pg_dump.c:1054 pg_dumpall.c:671
 #, c-format
 msgid "  --lock-wait-timeout=TIMEOUT  fail after waiting TIMEOUT for a table lock\n"
 msgstr ""
 "  --lock-wait-timeout=DÉLAI    échec après l'attente du DÉLAI pour un verrou de\n"
 "                               table\n"
 
-#: pg_dump.c:1035 pg_dumpall.c:657
+#: pg_dump.c:1055 pg_dumpall.c:698
 #, c-format
 msgid "  --no-sync                    do not wait for changes to be written safely to disk\n"
 msgstr ""
 "  --no-sync                    n'attend pas que les modifications soient\n"
 "                               proprement écrites sur disque\n"
 
-#: pg_dump.c:1036 pg_dumpall.c:631
+#: pg_dump.c:1056 pg_dumpall.c:672
 #, c-format
 msgid "  -?, --help                   show this help, then exit\n"
 msgstr "  -?, --help                   affiche cette aide puis quitte\n"
 
-#: pg_dump.c:1038 pg_dumpall.c:632
+#: pg_dump.c:1058 pg_dumpall.c:673
 #, c-format
 msgid ""
 "\n"
@@ -1450,56 +1465,56 @@ msgstr ""
 "\n"
 "Options contrôlant le contenu en sortie :\n"
 
-#: pg_dump.c:1039 pg_dumpall.c:633
+#: pg_dump.c:1059 pg_dumpall.c:674
 #, c-format
 msgid "  -a, --data-only              dump only the data, not the schema\n"
 msgstr "  -a, --data-only              sauvegarde uniquement les données, pas le schéma\n"
 
-#: pg_dump.c:1040
+#: pg_dump.c:1060
 #, c-format
 msgid "  -b, --blobs                  include large objects in dump\n"
 msgstr "  -b, --blobs                  inclut les « Large Objects » dans la sauvegarde\n"
 
-#: pg_dump.c:1041
+#: pg_dump.c:1061
 #, c-format
 msgid "  -B, --no-blobs               exclude large objects in dump\n"
 msgstr "  -B, --no-blobs               exclut les « Large Objects » de la sauvegarde\n"
 
-#: pg_dump.c:1042 pg_restore.c:476
+#: pg_dump.c:1062 pg_restore.c:506
 #, c-format
 msgid "  -c, --clean                  clean (drop) database objects before recreating\n"
 msgstr ""
 "  -c, --clean                  nettoie/supprime les objets de la base de données\n"
 "                               avant de les créer\n"
 
-#: pg_dump.c:1043
+#: pg_dump.c:1063
 #, c-format
 msgid "  -C, --create                 include commands to create database in dump\n"
 msgstr ""
 "  -C, --create                 inclut les commandes de création de la base\n"
 "                               dans la sauvegarde\n"
 
-#: pg_dump.c:1044
+#: pg_dump.c:1064
 #, c-format
 msgid "  -e, --extension=PATTERN      dump the specified extension(s) only\n"
 msgstr "  -e, --extension=MOTIF        sauvegarde uniquement les extensions indiquées\n"
 
-#: pg_dump.c:1045 pg_dumpall.c:635
+#: pg_dump.c:1065 pg_dumpall.c:676
 #, c-format
 msgid "  -E, --encoding=ENCODING      dump the data in encoding ENCODING\n"
 msgstr "  -E, --encoding=ENCODAGE      sauvegarde les données dans l'encodage ENCODAGE\n"
 
-#: pg_dump.c:1046
+#: pg_dump.c:1066
 #, c-format
 msgid "  -n, --schema=PATTERN         dump the specified schema(s) only\n"
 msgstr "  -n, --schema=MOTIF           sauvegarde uniquement les schémas indiqués\n"
 
-#: pg_dump.c:1047
+#: pg_dump.c:1067
 #, c-format
 msgid "  -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n"
 msgstr "  -N, --exclude-schema=MOTIF   ne sauvegarde pas les schémas indiqués\n"
 
-#: pg_dump.c:1048
+#: pg_dump.c:1068
 #, c-format
 msgid ""
 "  -O, --no-owner               skip restoration of object ownership in\n"
@@ -1508,50 +1523,50 @@ msgstr ""
 "  -O, --no-owner               ne sauvegarde pas les propriétaires des objets\n"
 "                               lors de l'utilisation du format texte\n"
 
-#: pg_dump.c:1050 pg_dumpall.c:639
+#: pg_dump.c:1070 pg_dumpall.c:680
 #, c-format
 msgid "  -s, --schema-only            dump only the schema, no data\n"
 msgstr ""
 "  -s, --schema-only            sauvegarde uniquement la structure, pas les\n"
 "                               données\n"
 
-#: pg_dump.c:1051
+#: pg_dump.c:1071
 #, c-format
 msgid "  -S, --superuser=NAME         superuser user name to use in plain-text format\n"
 msgstr ""
 "  -S, --superuser=NOM          indique le nom du super-utilisateur à utiliser\n"
 "                               avec le format texte\n"
 
-#: pg_dump.c:1052
+#: pg_dump.c:1072
 #, c-format
 msgid "  -t, --table=PATTERN          dump the specified table(s) only\n"
 msgstr "  -t, --table=MOTIF            sauvegarde uniquement les tables indiquées\n"
 
-#: pg_dump.c:1053
+#: pg_dump.c:1073
 #, c-format
 msgid "  -T, --exclude-table=PATTERN  do NOT dump the specified table(s)\n"
 msgstr "  -T, --exclude-table=MOTIF    ne sauvegarde pas les tables indiquées\n"
 
-#: pg_dump.c:1054 pg_dumpall.c:642
+#: pg_dump.c:1074 pg_dumpall.c:683
 #, c-format
 msgid "  -x, --no-privileges          do not dump privileges (grant/revoke)\n"
 msgstr "  -x, --no-privileges          ne sauvegarde pas les droits sur les objets\n"
 
-#: pg_dump.c:1055 pg_dumpall.c:643
+#: pg_dump.c:1075 pg_dumpall.c:684
 #, c-format
 msgid "  --binary-upgrade             for use by upgrade utilities only\n"
 msgstr ""
 "  --binary-upgrade             à n'utiliser que par les outils de mise à jour\n"
 "                               seulement\n"
 
-#: pg_dump.c:1056 pg_dumpall.c:644
+#: pg_dump.c:1076 pg_dumpall.c:685
 #, c-format
 msgid "  --column-inserts             dump data as INSERT commands with column names\n"
 msgstr ""
 "  --column-inserts             sauvegarde les données avec des commandes INSERT\n"
 "                               en précisant les noms des colonnes\n"
 
-#: pg_dump.c:1057 pg_dumpall.c:645
+#: pg_dump.c:1077 pg_dumpall.c:686
 #, c-format
 msgid "  --disable-dollar-quoting     disable dollar quoting, use SQL standard quoting\n"
 msgstr ""
@@ -1559,14 +1574,14 @@ msgstr ""
 "                               dans le but de respecter le standard SQL en\n"
 "                               matière de guillemets\n"
 
-#: pg_dump.c:1058 pg_dumpall.c:646 pg_restore.c:493
+#: pg_dump.c:1078 pg_dumpall.c:687 pg_restore.c:523
 #, c-format
 msgid "  --disable-triggers           disable triggers during data-only restore\n"
 msgstr ""
 "  --disable-triggers           désactive les triggers en mode de restauration\n"
 "                               des données seules\n"
 
-#: pg_dump.c:1059
+#: pg_dump.c:1079
 #, c-format
 msgid ""
 "  --enable-row-security        enable row security (dump only content user has\n"
@@ -1576,26 +1591,26 @@ msgstr ""
 "                               sauvegarde uniquement le contenu visible par cet\n"
 "                               utilisateur)\n"
 
-#: pg_dump.c:1061
+#: pg_dump.c:1081
 #, c-format
 msgid "  --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n"
 msgstr "  --exclude-table-data=MOTIF   ne sauvegarde pas les tables indiquées\n"
 
-#: pg_dump.c:1062 pg_dumpall.c:648
+#: pg_dump.c:1082 pg_dumpall.c:689
 #, c-format
 msgid "  --extra-float-digits=NUM     override default setting for extra_float_digits\n"
 msgstr ""
 "  --extra-float-digits=NUM     surcharge la configuration par défaut de\n"
 "                               extra_float_digits\n"
 
-#: pg_dump.c:1063 pg_dumpall.c:649 pg_restore.c:495
+#: pg_dump.c:1083 pg_dumpall.c:690 pg_restore.c:525
 #, c-format
 msgid "  --if-exists                  use IF EXISTS when dropping objects\n"
 msgstr ""
 "  --if-exists                  utilise IF EXISTS lors de la suppression des\n"
 "                               objets\n"
 
-#: pg_dump.c:1064
+#: pg_dump.c:1084
 #, c-format
 msgid ""
 "  --include-foreign-data=PATTERN\n"
@@ -1605,105 +1620,110 @@ msgstr ""
 "  --include-foreign-data=MOTIF inclut les données des tables externes pour les\n"
 "                               serveurs distants correspondant au motif MOTIF\n"
 
-#: pg_dump.c:1067 pg_dumpall.c:650
+#: pg_dump.c:1087 pg_dumpall.c:691
 #, c-format
 msgid "  --inserts                    dump data as INSERT commands, rather than COPY\n"
 msgstr ""
 "  --inserts                    sauvegarde les données avec des instructions\n"
 "                               INSERT plutôt que COPY\n"
 
-#: pg_dump.c:1068 pg_dumpall.c:651
+#: pg_dump.c:1088 pg_dumpall.c:692
 #, c-format
 msgid "  --load-via-partition-root    load partitions via the root table\n"
 msgstr "  --load-via-partition-root    charger les partitions via la table racine\n"
 
-#: pg_dump.c:1069 pg_dumpall.c:652
+#: pg_dump.c:1089 pg_dumpall.c:693
 #, c-format
 msgid "  --no-comments                do not dump comments\n"
 msgstr "  --no-comments                ne sauvegarde pas les commentaires\n"
 
-#: pg_dump.c:1070 pg_dumpall.c:653
+#: pg_dump.c:1090 pg_dumpall.c:694
 #, c-format
 msgid "  --no-publications            do not dump publications\n"
 msgstr "  --no-publications            ne sauvegarde pas les publications\n"
 
-#: pg_dump.c:1071 pg_dumpall.c:655
+#: pg_dump.c:1091 pg_dumpall.c:696
 #, c-format
 msgid "  --no-security-labels         do not dump security label assignments\n"
 msgstr ""
 "  --no-security-labels         ne sauvegarde pas les affectations de labels de\n"
 "                               sécurité\n"
 
-#: pg_dump.c:1072 pg_dumpall.c:656
+#: pg_dump.c:1092 pg_dumpall.c:697
 #, c-format
 msgid "  --no-subscriptions           do not dump subscriptions\n"
 msgstr "  --no-subscriptions           ne sauvegarde pas les souscriptions\n"
 
-#: pg_dump.c:1073
+#: pg_dump.c:1093
 #, c-format
 msgid "  --no-synchronized-snapshots  do not use synchronized snapshots in parallel jobs\n"
 msgstr ""
 "  --no-synchronized-snapshots  n'utilise pas de snapshots synchronisés pour les\n"
 "                               jobs en parallèle\n"
 
-#: pg_dump.c:1074 pg_dumpall.c:658
+#: pg_dump.c:1094 pg_dumpall.c:699
 #, c-format
 msgid "  --no-tablespaces             do not dump tablespace assignments\n"
 msgstr "  --no-tablespaces             ne sauvegarde pas les affectations de tablespaces\n"
 
-#: pg_dump.c:1075 pg_dumpall.c:659
+#: pg_dump.c:1095 pg_dumpall.c:700
 #, c-format
 msgid "  --no-toast-compression       do not dump TOAST compression methods\n"
 msgstr ""
 "  --no-toast-compression       ne sauvegarde pas les méthodes de compression de\n"
 "                               TOAST\n"
 
-#: pg_dump.c:1076 pg_dumpall.c:660
+#: pg_dump.c:1096 pg_dumpall.c:701
 #, c-format
 msgid "  --no-unlogged-table-data     do not dump unlogged table data\n"
 msgstr ""
 "  --no-unlogged-table-data     ne sauvegarde pas les données des tables non\n"
 "                               journalisées\n"
 
-#: pg_dump.c:1077 pg_dumpall.c:661
+#: pg_dump.c:1097 pg_dumpall.c:702
 #, c-format
 msgid "  --on-conflict-do-nothing     add ON CONFLICT DO NOTHING to INSERT commands\n"
 msgstr ""
 "  --on-conflict-do-nothing     ajoute ON CONFLICT DO NOTHING aux commandes\n"
 "                               INSERT\n"
 
-#: pg_dump.c:1078 pg_dumpall.c:662
+#: pg_dump.c:1098 pg_dumpall.c:703
 #, c-format
 msgid "  --quote-all-identifiers      quote all identifiers, even if not key words\n"
 msgstr ""
 "  --quote-all-identifiers      met entre guillemets tous les identifiants même\n"
 "                               s'il ne s'agit pas de mots clés\n"
 
-#: pg_dump.c:1079 pg_dumpall.c:663
+#: pg_dump.c:1099 pg_dumpall.c:704 pg_restore.c:533
+#, c-format
+msgid "  --restrict-key=RESTRICT_KEY  use provided string as psql \\restrict key\n"
+msgstr "  --restrict-key=CLE           utilise la chaîne fournie comme clé pour \\restrict de psql\n"
+
+#: pg_dump.c:1100 pg_dumpall.c:705
 #, c-format
 msgid "  --rows-per-insert=NROWS      number of rows per INSERT; implies --inserts\n"
 msgstr "  --rows-per-insert=NROWS      nombre de lignes par INSERT ; implique --inserts\n"
 
-#: pg_dump.c:1080
+#: pg_dump.c:1101
 #, c-format
 msgid "  --section=SECTION            dump named section (pre-data, data, or post-data)\n"
 msgstr ""
 "  --section=SECTION            sauvegarde la section indiquée (pre-data, data\n"
 "                               ou post-data)\n"
 
-#: pg_dump.c:1081
+#: pg_dump.c:1102
 #, c-format
 msgid "  --serializable-deferrable    wait until the dump can run without anomalies\n"
 msgstr ""
 "  --serializable-deferrable    attend jusqu'à ce que la sauvegarde puisse\n"
 "                               s'exécuter sans anomalies\n"
 
-#: pg_dump.c:1082
+#: pg_dump.c:1103
 #, c-format
 msgid "  --snapshot=SNAPSHOT          use given snapshot for the dump\n"
 msgstr "  --snapshot=SNAPSHOT          utilise l'image donnée pour la sauvegarde\n"
 
-#: pg_dump.c:1083 pg_restore.c:504
+#: pg_dump.c:1104 pg_restore.c:535
 #, c-format
 msgid ""
 "  --strict-names               require table and/or schema include patterns to\n"
@@ -1712,7 +1732,7 @@ msgstr ""
 "  --strict-names               requiert que les motifs des tables et/ou schémas\n"
 "                               correspondent à au moins une entité de chaque\n"
 
-#: pg_dump.c:1085 pg_dumpall.c:664 pg_restore.c:506
+#: pg_dump.c:1106 pg_dumpall.c:706 pg_restore.c:537
 #, c-format
 msgid ""
 "  --use-set-session-authorization\n"
@@ -1724,7 +1744,7 @@ msgstr ""
 "                               au lieu des commandes ALTER OWNER pour modifier\n"
 "                               les propriétaires\n"
 
-#: pg_dump.c:1089 pg_dumpall.c:668 pg_restore.c:510
+#: pg_dump.c:1110 pg_dumpall.c:710 pg_restore.c:541
 #, c-format
 msgid ""
 "\n"
@@ -1733,46 +1753,46 @@ msgstr ""
 "\n"
 "Options de connexion :\n"
 
-#: pg_dump.c:1090
+#: pg_dump.c:1111
 #, c-format
 msgid "  -d, --dbname=DBNAME      database to dump\n"
 msgstr "  -d, --dbname=BASE            base de données à sauvegarder\n"
 
-#: pg_dump.c:1091 pg_dumpall.c:670 pg_restore.c:511
+#: pg_dump.c:1112 pg_dumpall.c:712 pg_restore.c:542
 #, c-format
 msgid "  -h, --host=HOSTNAME      database server host or socket directory\n"
 msgstr ""
 "  -h, --host=HÔTE              hôte du serveur de bases de données ou\n"
 "                               répertoire des sockets\n"
 
-#: pg_dump.c:1092 pg_dumpall.c:672 pg_restore.c:512
+#: pg_dump.c:1113 pg_dumpall.c:714 pg_restore.c:543
 #, c-format
 msgid "  -p, --port=PORT          database server port number\n"
 msgstr "  -p, --port=PORT              numéro de port du serveur de bases de données\n"
 
-#: pg_dump.c:1093 pg_dumpall.c:673 pg_restore.c:513
+#: pg_dump.c:1114 pg_dumpall.c:715 pg_restore.c:544
 #, c-format
 msgid "  -U, --username=NAME      connect as specified database user\n"
 msgstr "  -U, --username=NOM           se connecter avec cet utilisateur\n"
 
-#: pg_dump.c:1094 pg_dumpall.c:674 pg_restore.c:514
+#: pg_dump.c:1115 pg_dumpall.c:716 pg_restore.c:545
 #, c-format
 msgid "  -w, --no-password        never prompt for password\n"
 msgstr "  -w, --no-password            ne demande jamais un mot de passe\n"
 
-#: pg_dump.c:1095 pg_dumpall.c:675 pg_restore.c:515
+#: pg_dump.c:1116 pg_dumpall.c:717 pg_restore.c:546
 #, c-format
 msgid "  -W, --password           force password prompt (should happen automatically)\n"
 msgstr ""
 "  -W, --password               force la demande du mot de passe (devrait\n"
 "                               survenir automatiquement)\n"
 
-#: pg_dump.c:1096 pg_dumpall.c:676
+#: pg_dump.c:1117 pg_dumpall.c:718
 #, c-format
 msgid "  --role=ROLENAME          do SET ROLE before dump\n"
 msgstr "  --role=NOMROLE               exécute SET ROLE avant la sauvegarde\n"
 
-#: pg_dump.c:1098
+#: pg_dump.c:1119
 #, c-format
 msgid ""
 "\n"
@@ -1785,22 +1805,22 @@ msgstr ""
 "d'environnement PGDATABASE est alors utilisée.\n"
 "\n"
 
-#: pg_dump.c:1100 pg_dumpall.c:680 pg_restore.c:522
+#: pg_dump.c:1121 pg_dumpall.c:722 pg_restore.c:553
 #, c-format
 msgid "Report bugs to <%s>.\n"
 msgstr "Rapporter les bogues à <%s>.\n"
 
-#: pg_dump.c:1101 pg_dumpall.c:681 pg_restore.c:523
+#: pg_dump.c:1122 pg_dumpall.c:723 pg_restore.c:554
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Page d'accueil de %s : <%s>\n"
 
-#: pg_dump.c:1120 pg_dumpall.c:504
+#: pg_dump.c:1141 pg_dumpall.c:529
 #, c-format
 msgid "invalid client encoding \"%s\" specified"
 msgstr "encodage client indiqué (« %s ») invalide"
 
-#: pg_dump.c:1274
+#: pg_dump.c:1295
 #, c-format
 msgid ""
 "Synchronized snapshots on standby servers are not supported by this server version.\n"
@@ -1811,553 +1831,553 @@ msgstr ""
 "Lancez avec --no-synchronized-snapshots à la place si vous n'avez pas besoin\n"
 "de snapshots synchronisés."
 
-#: pg_dump.c:1343
+#: pg_dump.c:1364
 #, c-format
 msgid "invalid output format \"%s\" specified"
 msgstr "format de sortie « %s » invalide"
 
-#: pg_dump.c:1384 pg_dump.c:1440 pg_dump.c:1493 pg_dumpall.c:1477
+#: pg_dump.c:1405 pg_dump.c:1461 pg_dump.c:1514 pg_dumpall.c:1523
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "mauvaise qualification du nom (trop de points entre les noms) : %s"
 
-#: pg_dump.c:1392
+#: pg_dump.c:1413
 #, c-format
 msgid "no matching schemas were found for pattern \"%s\""
 msgstr "aucun schéma correspondant n'a été trouvé avec le motif « %s »"
 
-#: pg_dump.c:1445
+#: pg_dump.c:1466
 #, c-format
 msgid "no matching extensions were found for pattern \"%s\""
 msgstr "aucune extension correspondante n'a été trouvée avec le motif « %s »"
 
-#: pg_dump.c:1498
+#: pg_dump.c:1519
 #, c-format
 msgid "no matching foreign servers were found for pattern \"%s\""
 msgstr "aucun serveur distant correspondant n'a été trouvé avec le motif « %s »"
 
-#: pg_dump.c:1561
+#: pg_dump.c:1582
 #, c-format
 msgid "improper relation name (too many dotted names): %s"
 msgstr "nom de relation incorrecte (trop de points entre les noms) : %s"
 
-#: pg_dump.c:1572
+#: pg_dump.c:1593
 #, c-format
 msgid "no matching tables were found for pattern \"%s\""
 msgstr "aucune table correspondante n'a été trouvée avec le motif « %s »"
 
-#: pg_dump.c:1599
+#: pg_dump.c:1620
 #, c-format
 msgid "You are currently not connected to a database."
 msgstr "Vous n'êtes pas connecté à une base de données."
 
-#: pg_dump.c:1602
+#: pg_dump.c:1623
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "les références entre bases de données ne sont pas implémentées : %s"
 
-#: pg_dump.c:2036
+#: pg_dump.c:2064
 #, c-format
 msgid "dumping contents of table \"%s.%s\""
 msgstr "sauvegarde du contenu de la table « %s.%s »"
 
-#: pg_dump.c:2147
+#: pg_dump.c:2175
 #, c-format
 msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed."
 msgstr "Sauvegarde du contenu de la table « %s » échouée : échec de PQgetCopyData()."
 
-#: pg_dump.c:2148 pg_dump.c:2158
+#: pg_dump.c:2176 pg_dump.c:2186
 #, c-format
 msgid "Error message from server: %s"
 msgstr "Message d'erreur du serveur : %s"
 
-#: pg_dump.c:2149 pg_dump.c:2159
+#: pg_dump.c:2177 pg_dump.c:2187
 #, c-format
 msgid "The command was: %s"
 msgstr "La commande était : %s"
 
-#: pg_dump.c:2157
+#: pg_dump.c:2185
 #, c-format
 msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed."
 msgstr "Sauvegarde du contenu de la table « %s » échouée : échec de PQgetResult()."
 
-#: pg_dump.c:2248
+#: pg_dump.c:2276
 #, c-format
 msgid "wrong number of fields retrieved from table \"%s\""
 msgstr "mauvais nombre de champs récupérés à partir de la table « %s »"
 
-#: pg_dump.c:3003
+#: pg_dump.c:3034
 #, c-format
 msgid "saving database definition"
 msgstr "sauvegarde de la définition de la base de données"
 
-#: pg_dump.c:3475
+#: pg_dump.c:3506
 #, c-format
 msgid "saving encoding = %s"
 msgstr "encodage de la sauvegarde = %s"
 
-#: pg_dump.c:3500
+#: pg_dump.c:3531
 #, c-format
 msgid "saving standard_conforming_strings = %s"
 msgstr "sauvegarde de standard_conforming_strings = %s"
 
-#: pg_dump.c:3539
+#: pg_dump.c:3570
 #, c-format
 msgid "could not parse result of current_schemas()"
 msgstr "n'a pas pu analyser le résultat de current_schema()"
 
-#: pg_dump.c:3558
+#: pg_dump.c:3589
 #, c-format
 msgid "saving search_path = %s"
 msgstr "sauvegarde de search_path = %s"
 
-#: pg_dump.c:3598
+#: pg_dump.c:3629
 #, c-format
 msgid "reading large objects"
 msgstr "lecture des « Large Objects »"
 
-#: pg_dump.c:3780
+#: pg_dump.c:3811
 #, c-format
 msgid "saving large objects"
 msgstr "sauvegarde des « Large Objects »"
 
-#: pg_dump.c:3826
+#: pg_dump.c:3857
 #, c-format
 msgid "error reading large object %u: %s"
 msgstr "erreur lors de la lecture du « Large Object » %u : %s"
 
-#: pg_dump.c:3930
+#: pg_dump.c:3961
 #, c-format
 msgid "reading row-level security policies"
 msgstr "lecture des politiques de sécurité au niveau ligne"
 
-#: pg_dump.c:4069
+#: pg_dump.c:4100
 #, c-format
 msgid "unexpected policy command type: %c"
 msgstr "type de commande inattendu pour la politique : %c"
 
-#: pg_dump.c:4223
+#: pg_dump.c:4254
 #, c-format
 msgid "owner of publication \"%s\" appears to be invalid"
 msgstr "le propriétaire de la publication « %s » semble être invalide"
 
-#: pg_dump.c:4537
+#: pg_dump.c:4568
 #, c-format
 msgid "subscriptions not dumped because current user is not a superuser"
 msgstr "les souscriptions ne sont pas sauvegardées parce que l'utilisateur courant n'est pas un superutilisateur"
 
-#: pg_dump.c:4608
+#: pg_dump.c:4639
 #, c-format
 msgid "owner of subscription \"%s\" appears to be invalid"
 msgstr "le propriétaire de la souscription « %s » semble être invalide"
 
-#: pg_dump.c:4651
+#: pg_dump.c:4682
 #, c-format
 msgid "could not parse subpublications array"
 msgstr "n'a pas pu analyser le tableau de sous-publications"
 
-#: pg_dump.c:5009
+#: pg_dump.c:5040
 #, c-format
 msgid "could not find parent extension for %s %s"
 msgstr "n'a pas pu trouver l'extension parent pour %s %s"
 
-#: pg_dump.c:5141
+#: pg_dump.c:5172
 #, c-format
 msgid "owner of schema \"%s\" appears to be invalid"
 msgstr "le propriétaire du schéma « %s » semble être invalide"
 
-#: pg_dump.c:5164
+#: pg_dump.c:5195
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "le schéma d'OID %u n'existe pas"
 
-#: pg_dump.c:5494
+#: pg_dump.c:5525
 #, c-format
 msgid "owner of data type \"%s\" appears to be invalid"
 msgstr "le propriétaire du type de données « %s » semble être invalide"
 
-#: pg_dump.c:5578
+#: pg_dump.c:5617
 #, c-format
 msgid "owner of operator \"%s\" appears to be invalid"
 msgstr "le propriétaire de l'opérateur « %s » semble être invalide"
 
-#: pg_dump.c:5877
+#: pg_dump.c:5941
 #, c-format
 msgid "owner of operator class \"%s\" appears to be invalid"
 msgstr "le propriétaire de la classe d'opérateur « %s » semble être invalide"
 
-#: pg_dump.c:5960
+#: pg_dump.c:6027
 #, c-format
 msgid "owner of operator family \"%s\" appears to be invalid"
 msgstr "le propriétaire de la famille d'opérateur « %s » semble être invalide"
 
-#: pg_dump.c:6128
+#: pg_dump.c:6195
 #, c-format
 msgid "owner of aggregate function \"%s\" appears to be invalid"
 msgstr "le propriétaire de la fonction d'agrégat « %s » semble être invalide"
 
-#: pg_dump.c:6389
+#: pg_dump.c:6456
 #, c-format
 msgid "owner of function \"%s\" appears to be invalid"
 msgstr "le propriétaire de la fonction « %s » semble être invalide"
 
-#: pg_dump.c:7185
+#: pg_dump.c:7252
 #, c-format
 msgid "owner of table \"%s\" appears to be invalid"
 msgstr "le propriétaire de la table « %s » semble être invalide"
 
-#: pg_dump.c:7227 pg_dump.c:17792
+#: pg_dump.c:7294 pg_dump.c:17880
 #, c-format
 msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found"
 msgstr "vérification échouée, OID %u de la table parent de l'OID %u de la séquence introuvable"
 
-#: pg_dump.c:7372
+#: pg_dump.c:7439
 #, c-format
 msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found"
 msgstr "vérification échouée, OID de table %u apparaissant dans pg_partitioned_table introuvable"
 
-#: pg_dump.c:7438
+#: pg_dump.c:7505
 #, c-format
 msgid "reading indexes for table \"%s.%s\""
 msgstr "lecture des index de la table « %s.%s »"
 
-#: pg_dump.c:7856
+#: pg_dump.c:7923
 #, c-format
 msgid "reading foreign key constraints for table \"%s.%s\""
 msgstr "lecture des contraintes de clés étrangères pour la table « %s.%s »"
 
-#: pg_dump.c:8135
+#: pg_dump.c:8202
 #, c-format
 msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found"
 msgstr "vérification échouée, OID %u de la table parent de l'OID %u de l'entrée de pg_rewrite introuvable"
 
-#: pg_dump.c:8219
+#: pg_dump.c:8286
 #, c-format
 msgid "reading triggers for table \"%s.%s\""
 msgstr "lecture des triggers pour la table « %s.%s »"
 
-#: pg_dump.c:8401
+#: pg_dump.c:8468
 #, c-format
 msgid "query produced null referenced table name for foreign key trigger \"%s\" on table \"%s\" (OID of table: %u)"
 msgstr "la requête a produit une réference de nom de table null pour le trigger de la clé étrangère « %s » sur la table « %s » (OID de la table : %u)"
 
-#: pg_dump.c:8951
+#: pg_dump.c:9018
 #, c-format
 msgid "finding the columns and types of table \"%s.%s\""
 msgstr "recherche des colonnes et types de la table « %s.%s »"
 
-#: pg_dump.c:9075
+#: pg_dump.c:9142
 #, c-format
 msgid "invalid column numbering in table \"%s\""
 msgstr "numérotation des colonnes invalide pour la table « %s »"
 
-#: pg_dump.c:9114
+#: pg_dump.c:9181
 #, c-format
 msgid "finding default expressions of table \"%s.%s\""
 msgstr "recherche des expressions par défaut de la table « %s.%s »"
 
-#: pg_dump.c:9136
+#: pg_dump.c:9203
 #, c-format
 msgid "invalid adnum value %d for table \"%s\""
 msgstr "valeur adnum %d invalide pour la table « %s »"
 
-#: pg_dump.c:9229
+#: pg_dump.c:9296
 #, c-format
 msgid "finding check constraints for table \"%s.%s\""
 msgstr "recherche des contraintes de vérification pour la table « %s.%s »"
 
-#: pg_dump.c:9278
+#: pg_dump.c:9345
 #, c-format
 msgid "expected %d check constraint on table \"%s\" but found %d"
 msgid_plural "expected %d check constraints on table \"%s\" but found %d"
 msgstr[0] "%d contrainte de vérification attendue pour la table « %s » mais %d trouvée"
 msgstr[1] "%d contraintes de vérification attendues pour la table « %s » mais %d trouvée"
 
-#: pg_dump.c:9282
+#: pg_dump.c:9349
 #, c-format
 msgid "(The system catalogs might be corrupted.)"
 msgstr "(Les catalogues système sont peut-être corrompus.)"
 
-#: pg_dump.c:10884
+#: pg_dump.c:10951
 #, c-format
 msgid "typtype of data type \"%s\" appears to be invalid"
 msgstr "la colonne typtype du type de données « %s » semble être invalide"
 
-#: pg_dump.c:12232
+#: pg_dump.c:12304
 #, c-format
 msgid "bogus value in proargmodes array"
 msgstr "valeur erronée dans le tableau proargmodes"
 
-#: pg_dump.c:12534
+#: pg_dump.c:12606
 #, c-format
 msgid "could not parse proallargtypes array"
 msgstr "n'a pas pu analyser le tableau proallargtypes"
 
-#: pg_dump.c:12550
+#: pg_dump.c:12622
 #, c-format
 msgid "could not parse proargmodes array"
 msgstr "n'a pas pu analyser le tableau proargmodes"
 
-#: pg_dump.c:12564
+#: pg_dump.c:12636
 #, c-format
 msgid "could not parse proargnames array"
 msgstr "n'a pas pu analyser le tableau proargnames"
 
-#: pg_dump.c:12574
+#: pg_dump.c:12646
 #, c-format
 msgid "could not parse proconfig array"
 msgstr "n'a pas pu analyser le tableau proconfig"
 
-#: pg_dump.c:12650
+#: pg_dump.c:12722
 #, c-format
 msgid "unrecognized provolatile value for function \"%s\""
 msgstr "valeur provolatile non reconnue pour la fonction « %s »"
 
-#: pg_dump.c:12700 pg_dump.c:14642
+#: pg_dump.c:12772 pg_dump.c:14714
 #, c-format
 msgid "unrecognized proparallel value for function \"%s\""
 msgstr "valeur proparallel non reconnue pour la fonction « %s »"
 
-#: pg_dump.c:12840 pg_dump.c:12946 pg_dump.c:12953
+#: pg_dump.c:12912 pg_dump.c:13018 pg_dump.c:13025
 #, c-format
 msgid "could not find function definition for function with OID %u"
 msgstr "n'a pas pu trouver la définition de la fonction d'OID %u"
 
-#: pg_dump.c:12879
+#: pg_dump.c:12951
 #, c-format
 msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field"
 msgstr "valeur erronée dans le champ pg_cast.castfunc ou pg_cast.castmethod"
 
-#: pg_dump.c:12882
+#: pg_dump.c:12954
 #, c-format
 msgid "bogus value in pg_cast.castmethod field"
 msgstr "valeur erronée dans pg_cast.castmethod"
 
-#: pg_dump.c:12972
+#: pg_dump.c:13044
 #, c-format
 msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero"
 msgstr "définition de transformation invalide, au moins un de trffromsql et trftosql ne doit pas valoir 0"
 
-#: pg_dump.c:12989
+#: pg_dump.c:13061
 #, c-format
 msgid "bogus value in pg_transform.trffromsql field"
 msgstr "valeur erronée dans pg_transform.trffromsql"
 
-#: pg_dump.c:13010
+#: pg_dump.c:13082
 #, c-format
 msgid "bogus value in pg_transform.trftosql field"
 msgstr "valeur erronée dans pg_transform.trftosql"
 
-#: pg_dump.c:13161
+#: pg_dump.c:13233
 #, c-format
 msgid "postfix operators are not supported anymore (operator \"%s\")"
 msgstr "les opérateurs postfixes ne sont plus supportés (opérateur « %s »)"
 
-#: pg_dump.c:13331
+#: pg_dump.c:13403
 #, c-format
 msgid "could not find operator with OID %s"
 msgstr "n'a pas pu trouver l'opérateur d'OID %s"
 
-#: pg_dump.c:13399
+#: pg_dump.c:13471
 #, c-format
 msgid "invalid type \"%c\" of access method \"%s\""
 msgstr "type « %c » invalide de la méthode d'accès « %s »"
 
-#: pg_dump.c:14153
+#: pg_dump.c:14225
 #, c-format
 msgid "unrecognized collation provider: %s"
 msgstr "fournisseur de collationnement non reconnu : %s"
 
-#: pg_dump.c:14561
+#: pg_dump.c:14633
 #, c-format
 msgid "unrecognized aggfinalmodify value for aggregate \"%s\""
 msgstr "valeur non reconnue de aggfinalmodify pour l'agrégat « %s »"
 
-#: pg_dump.c:14617
+#: pg_dump.c:14689
 #, c-format
 msgid "unrecognized aggmfinalmodify value for aggregate \"%s\""
 msgstr "valeur non reconnue de aggmfinalmodify pour l'agrégat « %s »"
 
-#: pg_dump.c:15339
+#: pg_dump.c:15411
 #, c-format
 msgid "unrecognized object type in default privileges: %d"
 msgstr "type d'objet inconnu dans les droits par défaut : %d"
 
-#: pg_dump.c:15357
+#: pg_dump.c:15429
 #, c-format
 msgid "could not parse default ACL list (%s)"
 msgstr "n'a pas pu analyser la liste ACL par défaut (%s)"
 
-#: pg_dump.c:15442
+#: pg_dump.c:15514
 #, c-format
 msgid "could not parse initial GRANT ACL list (%s) or initial REVOKE ACL list (%s) for object \"%s\" (%s)"
 msgstr "n'a pas pu analyser la liste ACL GRANT initiale (%s) ou la liste ACL REVOKE initiale (%s) de l'objet « %s » (%s)"
 
-#: pg_dump.c:15450
+#: pg_dump.c:15522
 #, c-format
 msgid "could not parse GRANT ACL list (%s) or REVOKE ACL list (%s) for object \"%s\" (%s)"
 msgstr "n'a pas pu analyser la liste ACL GRANT (%s) ou REVOKE (%s) de l'objet « %s » (%s)"
 
-#: pg_dump.c:15965
+#: pg_dump.c:16037
 #, c-format
 msgid "query to obtain definition of view \"%s\" returned no data"
 msgstr "la requête permettant d'obtenir la définition de la vue « %s » n'a renvoyé aucune donnée"
 
-#: pg_dump.c:15968
+#: pg_dump.c:16040
 #, c-format
 msgid "query to obtain definition of view \"%s\" returned more than one definition"
 msgstr "la requête permettant d'obtenir la définition de la vue « %s » a renvoyé plusieurs définitions"
 
-#: pg_dump.c:15975
+#: pg_dump.c:16047
 #, c-format
 msgid "definition of view \"%s\" appears to be empty (length zero)"
 msgstr "la définition de la vue « %s » semble être vide (longueur nulle)"
 
-#: pg_dump.c:16059
+#: pg_dump.c:16131
 #, c-format
 msgid "WITH OIDS is not supported anymore (table \"%s\")"
 msgstr "WITH OIDS n'est plus supporté (table « %s »)"
 
-#: pg_dump.c:16965
+#: pg_dump.c:17037
 #, c-format
 msgid "invalid column number %d for table \"%s\""
 msgstr "numéro de colonne %d invalide pour la table « %s »"
 
-#: pg_dump.c:17042
+#: pg_dump.c:17114
 #, c-format
 msgid "could not parse index statistic columns"
 msgstr "n'a pas pu analyser les colonnes statistiques de l'index"
 
-#: pg_dump.c:17044
+#: pg_dump.c:17116
 #, c-format
 msgid "could not parse index statistic values"
 msgstr "n'a pas pu analyser les valeurs statistiques de l'index"
 
-#: pg_dump.c:17046
+#: pg_dump.c:17118
 #, c-format
 msgid "mismatched number of columns and values for index statistics"
 msgstr "nombre de colonnes et de valeurs différentes pour les statistiques des index"
 
-#: pg_dump.c:17277
+#: pg_dump.c:17349
 #, c-format
 msgid "missing index for constraint \"%s\""
 msgstr "index manquant pour la contrainte « %s »"
 
-#: pg_dump.c:17502
+#: pg_dump.c:17590
 #, c-format
 msgid "unrecognized constraint type: %c"
 msgstr "type de contrainte inconnu : %c"
 
-#: pg_dump.c:17634 pg_dump.c:17857
+#: pg_dump.c:17722 pg_dump.c:17945
 #, c-format
 msgid "query to get data of sequence \"%s\" returned %d row (expected 1)"
 msgid_plural "query to get data of sequence \"%s\" returned %d rows (expected 1)"
 msgstr[0] "la requête permettant d'obtenir les données de la séquence « %s » a renvoyé %d ligne (une seule attendue)"
 msgstr[1] "la requête permettant d'obtenir les données de la séquence « %s » a renvoyé %d ligne (une seule attendue)"
 
-#: pg_dump.c:17668
+#: pg_dump.c:17756
 #, c-format
 msgid "unrecognized sequence type: %s"
 msgstr "type de séquence non reconnu : « %s »"
 
-#: pg_dump.c:17955
+#: pg_dump.c:18043
 #, c-format
 msgid "unexpected tgtype value: %d"
 msgstr "valeur tgtype inattendue : %d"
 
-#: pg_dump.c:18029
+#: pg_dump.c:18117
 #, c-format
 msgid "invalid argument string (%s) for trigger \"%s\" on table \"%s\""
 msgstr "chaîne argument invalide (%s) pour le trigger « %s » sur la table « %s »"
 
-#: pg_dump.c:18298
+#: pg_dump.c:18391
 #, c-format
 msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned"
 msgstr "la requête permettant d'obtenir la règle « %s » associée à la table « %s » a échoué : mauvais nombre de lignes renvoyées"
 
-#: pg_dump.c:18460
+#: pg_dump.c:18553
 #, c-format
 msgid "could not find referenced extension %u"
 msgstr "n'a pas pu trouver l'extension référencée %u"
 
-#: pg_dump.c:18551
+#: pg_dump.c:18644
 #, c-format
 msgid "could not parse extension configuration array"
 msgstr "n'a pas pu analyser le tableau de configuration des extensions"
 
-#: pg_dump.c:18553
+#: pg_dump.c:18646
 #, c-format
 msgid "could not parse extension condition array"
 msgstr "n'a pas pu analyser le tableau de condition de l'extension"
 
-#: pg_dump.c:18555
+#: pg_dump.c:18648
 #, c-format
 msgid "mismatched number of configurations and conditions for extension"
 msgstr "nombre différent de configurations et de conditions pour l'extension"
 
-#: pg_dump.c:18687
+#: pg_dump.c:18780
 #, c-format
 msgid "reading dependency data"
 msgstr "lecture des données de dépendance"
 
-#: pg_dump.c:18780
+#: pg_dump.c:18873
 #, c-format
 msgid "no referencing object %u %u"
 msgstr "pas d'objet référant %u %u"
 
-#: pg_dump.c:18791
+#: pg_dump.c:18884
 #, c-format
 msgid "no referenced object %u %u"
 msgstr "pas d'objet référencé %u %u"
 
-#: pg_dump.c:19180
+#: pg_dump.c:19273
 #, c-format
 msgid "could not parse reloptions array"
 msgstr "n'a pas pu analyser le tableau reloptions"
 
-#: pg_dump_sort.c:420
+#: pg_dump_sort.c:632
 #, c-format
 msgid "invalid dumpId %d"
 msgstr "dumpId %d invalide"
 
-#: pg_dump_sort.c:426
+#: pg_dump_sort.c:638
 #, c-format
 msgid "invalid dependency %d"
 msgstr "dépendance invalide %d"
 
-#: pg_dump_sort.c:659
+#: pg_dump_sort.c:871
 #, c-format
 msgid "could not identify dependency loop"
 msgstr "n'a pas pu identifier la boucle de dépendance"
 
-#: pg_dump_sort.c:1274
+#: pg_dump_sort.c:1486
 #, c-format
 msgid "there are circular foreign-key constraints on this table:"
 msgid_plural "there are circular foreign-key constraints among these tables:"
 msgstr[0] "NOTE : il existe des constraintes de clés étrangères circulaires sur cette table :"
 msgstr[1] "NOTE : il existe des constraintes de clés étrangères circulaires sur ces tables :"
 
-#: pg_dump_sort.c:1278 pg_dump_sort.c:1298
+#: pg_dump_sort.c:1490 pg_dump_sort.c:1510
 #, c-format
 msgid "  %s"
 msgstr "  %s"
 
-#: pg_dump_sort.c:1279
+#: pg_dump_sort.c:1491
 #, c-format
 msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints."
 msgstr "Il est possible de restaurer la sauvegarde sans utiliser --disable-triggers ou sans supprimer temporairement les constraintes."
 
-#: pg_dump_sort.c:1280
+#: pg_dump_sort.c:1492
 #, c-format
 msgid "Consider using a full dump instead of a --data-only dump to avoid this problem."
 msgstr "Considérez l'utilisation d'une sauvegarde complète au lieu d'une sauvegarde des données seulement pour éviter ce problème."
 
-#: pg_dump_sort.c:1292
+#: pg_dump_sort.c:1504
 #, c-format
 msgid "could not resolve dependency loop among these items:"
 msgstr "n'a pas pu résoudre la boucle de dépendances parmi ces éléments :"
 
-#: pg_dumpall.c:202
+#: pg_dumpall.c:205
 #, c-format
 msgid ""
 "The program \"%s\" is needed by %s but was not found in the\n"
@@ -2368,7 +2388,7 @@ msgstr ""
 "dans le même répertoire que « %s ».\n"
 "Vérifiez votre installation."
 
-#: pg_dumpall.c:207
+#: pg_dumpall.c:210
 #, c-format
 msgid ""
 "The program \"%s\" was found by \"%s\"\n"
@@ -2379,32 +2399,32 @@ msgstr ""
 "mais n'est pas de la même version que %s.\n"
 "Vérifiez votre installation."
 
-#: pg_dumpall.c:359
+#: pg_dumpall.c:368
 #, c-format
 msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only"
 msgstr "l'option --exclude-database ne peut pas être utilisée avec -g/--globals-only, -r/--roles-only ou -t/--tablespaces-only"
 
-#: pg_dumpall.c:368
+#: pg_dumpall.c:377
 #, c-format
 msgid "options -g/--globals-only and -r/--roles-only cannot be used together"
 msgstr "les options « -g/--globals-only » et « -r/--roles-only » ne peuvent pas être utilisées ensemble"
 
-#: pg_dumpall.c:376
+#: pg_dumpall.c:385
 #, c-format
 msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together"
 msgstr "les options « -g/--globals-only » et « -t/--tablespaces-only » ne peuvent pas être utilisées ensemble"
 
-#: pg_dumpall.c:390
+#: pg_dumpall.c:399
 #, c-format
 msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together"
 msgstr "les options « -r/--roles-only » et « -t/--tablespaces-only » ne peuvent pas être utilisées ensemble"
 
-#: pg_dumpall.c:453 pg_dumpall.c:1793
+#: pg_dumpall.c:478 pg_dumpall.c:1842
 #, c-format
 msgid "could not connect to database \"%s\""
 msgstr "n'a pas pu se connecter à la base de données « %s »"
 
-#: pg_dumpall.c:467
+#: pg_dumpall.c:492
 #, c-format
 msgid ""
 "could not connect to databases \"postgres\" or \"template1\"\n"
@@ -2413,7 +2433,7 @@ msgstr ""
 "n'a pas pu se connecter aux bases « postgres » et « template1 ».\n"
 "Merci de préciser une autre base de données."
 
-#: pg_dumpall.c:622
+#: pg_dumpall.c:663
 #, c-format
 msgid ""
 "%s extracts a PostgreSQL database cluster into an SQL script file.\n"
@@ -2423,79 +2443,79 @@ msgstr ""
 "commandes SQL.\n"
 "\n"
 
-#: pg_dumpall.c:624
+#: pg_dumpall.c:665
 #, c-format
 msgid "  %s [OPTION]...\n"
 msgstr "  %s [OPTION]...\n"
 
-#: pg_dumpall.c:627
+#: pg_dumpall.c:668
 #, c-format
 msgid "  -f, --file=FILENAME          output file name\n"
 msgstr "  -f, --file=FICHIER           nom du fichier de sortie\n"
 
-#: pg_dumpall.c:634
+#: pg_dumpall.c:675
 #, c-format
 msgid "  -c, --clean                  clean (drop) databases before recreating\n"
 msgstr ""
 "  -c, --clean                  nettoie (supprime) les bases de données avant de\n"
 "                               les créer\n"
 
-#: pg_dumpall.c:636
+#: pg_dumpall.c:677
 #, c-format
 msgid "  -g, --globals-only           dump only global objects, no databases\n"
 msgstr ""
 "  -g, --globals-only           sauvegarde uniquement les objets système, pas\n"
 "                               le contenu des bases de données\n"
 
-#: pg_dumpall.c:637 pg_restore.c:485
+#: pg_dumpall.c:678 pg_restore.c:515
 #, c-format
 msgid "  -O, --no-owner               skip restoration of object ownership\n"
 msgstr "  -O, --no-owner               omet la restauration des propriétaires des objets\n"
 
-#: pg_dumpall.c:638
+#: pg_dumpall.c:679
 #, c-format
 msgid "  -r, --roles-only             dump only roles, no databases or tablespaces\n"
 msgstr ""
 "  -r, --roles-only             sauvegarde uniquement les rôles, pas les bases\n"
 "                               de données ni les tablespaces\n"
 
-#: pg_dumpall.c:640
+#: pg_dumpall.c:681
 #, c-format
 msgid "  -S, --superuser=NAME         superuser user name to use in the dump\n"
 msgstr ""
 "  -S, --superuser=NOM          indique le nom du super-utilisateur à utiliser\n"
 "                               avec le format texte\n"
 
-#: pg_dumpall.c:641
+#: pg_dumpall.c:682
 #, c-format
 msgid "  -t, --tablespaces-only       dump only tablespaces, no databases or roles\n"
 msgstr ""
 "  -t, --tablespaces-only       sauvegarde uniquement les tablespaces, pas les\n"
 "                               bases de données ni les rôles\n"
 
-#: pg_dumpall.c:647
+#: pg_dumpall.c:688
 #, c-format
 msgid "  --exclude-database=PATTERN   exclude databases whose name matches PATTERN\n"
 msgstr ""
 "  --exclude-database=MOTIF     exclut les bases de données dont le nom\n"
 "                               correspond au motif\n"
 
-#: pg_dumpall.c:654
+#: pg_dumpall.c:695
 #, c-format
 msgid "  --no-role-passwords          do not dump passwords for roles\n"
 msgstr "  --no-role-passwords          ne sauvegarde pas les mots de passe des rôles\n"
 
-#: pg_dumpall.c:669
+#: pg_dumpall.c:711
 #, c-format
 msgid "  -d, --dbname=CONNSTR     connect using connection string\n"
 msgstr "  -d, --dbname=CHAINE_CONNEX   connexion à l'aide de la chaîne de connexion\n"
 
-#: pg_dumpall.c:671
+#: pg_dumpall.c:713
 #, c-format
 msgid "  -l, --database=DBNAME    alternative default database\n"
 msgstr "  -l, --database=BASE          indique une autre base par défaut\n"
 
-#: pg_dumpall.c:678
+#: pg_dumpall.c:720
 #, c-format
 msgid ""
 "\n"
@@ -2508,98 +2528,103 @@ msgstr ""
 "standard.\n"
 "\n"
 
-#: pg_dumpall.c:887
+#: pg_dumpall.c:929
 #, c-format
 msgid "role name starting with \"pg_\" skipped (%s)"
 msgstr "nom de rôle commençant par « pg_ » ignoré (« %s »)"
 
 #. translator: %s represents a numeric role OID
-#: pg_dumpall.c:1042 pg_dumpall.c:1049
+#: pg_dumpall.c:1084 pg_dumpall.c:1091
 #, c-format
 msgid "found orphaned pg_auth_members entry for role %s"
 msgstr "a trouvé une entrée orpheline dans pg_auth_members pour le rôle %s"
 
-#: pg_dumpall.c:1310
+#: pg_dumpall.c:1352
 #, c-format
 msgid "could not parse ACL list (%s) for tablespace \"%s\""
 msgstr "n'a pas pu analyser la liste d'ACL (%s) pour le tablespace « %s »"
 
-#: pg_dumpall.c:1538
+#: pg_dumpall.c:1585
 #, c-format
 msgid "excluding database \"%s\""
 msgstr "exclusion de la base de données « %s »"
 
-#: pg_dumpall.c:1542
+#: pg_dumpall.c:1589
 #, c-format
 msgid "dumping database \"%s\""
 msgstr "sauvegarde de la base de données « %s »"
 
-#: pg_dumpall.c:1574
+#: pg_dumpall.c:1623
 #, c-format
 msgid "pg_dump failed on database \"%s\", exiting"
 msgstr "échec de pg_dump sur la base de données « %s », quitte"
 
-#: pg_dumpall.c:1583
+#: pg_dumpall.c:1632
 #, c-format
 msgid "could not re-open the output file \"%s\": %m"
 msgstr "n'a pas pu ré-ouvrir le fichier de sortie « %s » : %m"
 
-#: pg_dumpall.c:1627
+#: pg_dumpall.c:1676
 #, c-format
 msgid "running \"%s\""
 msgstr "exécute « %s »"
 
-#: pg_dumpall.c:1842
+#: pg_dumpall.c:1891
 #, c-format
 msgid "could not get server version"
 msgstr "n'a pas pu obtenir la version du serveur"
 
-#: pg_dumpall.c:1848
+#: pg_dumpall.c:1897
 #, c-format
 msgid "could not parse server version \"%s\""
 msgstr "n'a pas pu analyser la version du serveur « %s »"
 
-#: pg_dumpall.c:1920 pg_dumpall.c:1943
+#: pg_dumpall.c:1969 pg_dumpall.c:1992
 #, c-format
 msgid "executing %s"
 msgstr "exécution %s"
 
-#: pg_restore.c:308
+#: pg_restore.c:313
 #, c-format
 msgid "one of -d/--dbname and -f/--file must be specified"
 msgstr "une seule des options -d/--dbname and -f/--file peut être indiquée"
 
-#: pg_restore.c:317
+#: pg_restore.c:322
 #, c-format
 msgid "options -d/--dbname and -f/--file cannot be used together"
 msgstr "les options « -d/--dbname » et « -f/--file » ne peuvent pas être utilisées ensemble"
 
-#: pg_restore.c:343
+#: pg_restore.c:330
+#, c-format
+msgid "options -d/--dbname and --restrict-key cannot be used together"
+msgstr "les options « -d/--dbname » et « --restrict-key » ne peuvent pas être utilisées ensemble"
+
+#: pg_restore.c:373
 #, c-format
 msgid "options -C/--create and -1/--single-transaction cannot be used together"
 msgstr "les options « -C/--create » et « -1/--single-transaction » ne peuvent pas être utilisées ensemble"
 
-#: pg_restore.c:357
+#: pg_restore.c:387
 #, c-format
 msgid "maximum number of parallel jobs is %d"
 msgstr "le nombre maximum de jobs en parallèle est %d"
 
-#: pg_restore.c:366
+#: pg_restore.c:396
 #, c-format
 msgid "cannot specify both --single-transaction and multiple jobs"
 msgstr "ne peut pas spécifier à la fois l'option --single-transaction et demander plusieurs jobs"
 
-#: pg_restore.c:408
+#: pg_restore.c:438
 #, c-format
 msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\""
 msgstr "format d'archive « %s » non reconnu ; merci d'indiquer « c », « d » ou « t »"
 
-#: pg_restore.c:448
+#: pg_restore.c:478
 #, c-format
 msgid "errors ignored on restore: %d"
 msgstr "erreurs ignorées lors de la restauration : %d"
 
-#: pg_restore.c:461
+#: pg_restore.c:491
 #, c-format
 msgid ""
 "%s restores a PostgreSQL database from an archive created by pg_dump.\n"
@@ -2609,51 +2634,51 @@ msgstr ""
 "par pg_dump.\n"
 "\n"
 
-#: pg_restore.c:463
+#: pg_restore.c:493
 #, c-format
 msgid "  %s [OPTION]... [FILE]\n"
 msgstr "  %s [OPTION]... [FICHIER]\n"
 
-#: pg_restore.c:466
+#: pg_restore.c:496
 #, c-format
 msgid "  -d, --dbname=NAME        connect to database name\n"
 msgstr ""
 "  -d, --dbname=NOM             nom de la base de données utilisée pour la\n"
 "                               connexion\n"
 
-#: pg_restore.c:467
+#: pg_restore.c:497
 #, c-format
 msgid "  -f, --file=FILENAME      output file name (- for stdout)\n"
 msgstr "  -f, --file=FICHIER           nom du fichier de sortie (- pour stdout)\n"
 
-#: pg_restore.c:468
+#: pg_restore.c:498
 #, c-format
 msgid "  -F, --format=c|d|t       backup file format (should be automatic)\n"
 msgstr ""
 "  -F, --format=c|d|t           format du fichier de sauvegarde (devrait être\n"
 "                               automatique)\n"
 
-#: pg_restore.c:469
+#: pg_restore.c:499
 #, c-format
 msgid "  -l, --list               print summarized TOC of the archive\n"
 msgstr "  -l, --list                   affiche la table des matières de l'archive (TOC)\n"
 
-#: pg_restore.c:470
+#: pg_restore.c:500
 #, c-format
 msgid "  -v, --verbose            verbose mode\n"
 msgstr "  -v, --verbose                mode verbeux\n"
 
-#: pg_restore.c:471
+#: pg_restore.c:501
 #, c-format
 msgid "  -V, --version            output version information, then exit\n"
 msgstr "  -V, --version                affiche la version puis quitte\n"
 
-#: pg_restore.c:472
+#: pg_restore.c:502
 #, c-format
 msgid "  -?, --help               show this help, then exit\n"
 msgstr "  -?, --help                   affiche cette aide puis quitte\n"
 
-#: pg_restore.c:474
+#: pg_restore.c:504
 #, c-format
 msgid ""
 "\n"
@@ -2662,34 +2687,34 @@ msgstr ""
 "\n"
 "Options contrôlant la restauration :\n"
 
-#: pg_restore.c:475
+#: pg_restore.c:505
 #, c-format
 msgid "  -a, --data-only              restore only the data, no schema\n"
 msgstr "  -a, --data-only              restaure uniquement les données, pas la structure\n"
 
-#: pg_restore.c:477
+#: pg_restore.c:507
 #, c-format
 msgid "  -C, --create                 create the target database\n"
 msgstr "  -C, --create                 crée la base de données cible\n"
 
-#: pg_restore.c:478
+#: pg_restore.c:508
 #, c-format
 msgid "  -e, --exit-on-error          exit on error, default is to continue\n"
 msgstr "  -e, --exit-on-error          quitte en cas d'erreur, continue par défaut\n"
 
-#: pg_restore.c:479
+#: pg_restore.c:509
 #, c-format
 msgid "  -I, --index=NAME             restore named index\n"
 msgstr "  -I, --index=NOM              restaure l'index indiqué\n"
 
-#: pg_restore.c:480
+#: pg_restore.c:510
 #, c-format
 msgid "  -j, --jobs=NUM               use this many parallel jobs to restore\n"
 msgstr ""
 "  -j, --jobs=NOMBRE            utilise ce nombre de jobs en parallèle pour la\n"
 "                               restauration\n"
 
-#: pg_restore.c:481
+#: pg_restore.c:511
 #, c-format
 msgid ""
 "  -L, --use-list=FILENAME      use table of contents from this file for\n"
@@ -2698,66 +2723,66 @@ msgstr ""
 "  -L, --use-list=FICHIER       utilise la table des matières à partir de ce\n"
 "                               fichier pour sélectionner/trier la sortie\n"
 
-#: pg_restore.c:483
+#: pg_restore.c:513
 #, c-format
 msgid "  -n, --schema=NAME            restore only objects in this schema\n"
 msgstr "  -n, --schema=NOM             restaure uniquement les objets de ce schéma\n"
 
-#: pg_restore.c:484
+#: pg_restore.c:514
 #, c-format
 msgid "  -N, --exclude-schema=NAME    do not restore objects in this schema\n"
 msgstr "  -N, --exclude-schema=NOM     ne restaure pas les objets de ce schéma\n"
 
-#: pg_restore.c:486
+#: pg_restore.c:516
 #, c-format
 msgid "  -P, --function=NAME(args)    restore named function\n"
 msgstr "  -P, --function=NOM(args)     restaure la fonction indiquée\n"
 
-#: pg_restore.c:487
+#: pg_restore.c:517
 #, c-format
 msgid "  -s, --schema-only            restore only the schema, no data\n"
 msgstr "  -s, --schema-only            restaure uniquement la structure, pas les données\n"
 
-#: pg_restore.c:488
+#: pg_restore.c:518
 #, c-format
 msgid "  -S, --superuser=NAME         superuser user name to use for disabling triggers\n"
 msgstr ""
 "  -S, --superuser=NOM          indique le nom du super-utilisateur à utiliser\n"
 "                               pour désactiver les triggers\n"
 
-#: pg_restore.c:489
+#: pg_restore.c:519
 #, c-format
 msgid "  -t, --table=NAME             restore named relation (table, view, etc.)\n"
 msgstr "  -t, --table=NOM              restaure la relation indiquée (table, vue, etc)\n"
 
-#: pg_restore.c:490
+#: pg_restore.c:520
 #, c-format
 msgid "  -T, --trigger=NAME           restore named trigger\n"
 msgstr "  -T, --trigger=NOM            restaure le trigger indiqué\n"
 
-#: pg_restore.c:491
+#: pg_restore.c:521
 #, c-format
 msgid "  -x, --no-privileges          skip restoration of access privileges (grant/revoke)\n"
 msgstr ""
 "  -x, --no-privileges          omet la restauration des droits sur les objets\n"
 "                               (grant/revoke)\n"
 
-#: pg_restore.c:492
+#: pg_restore.c:522
 #, c-format
 msgid "  -1, --single-transaction     restore as a single transaction\n"
 msgstr "  -1, --single-transaction     restaure dans une seule transaction\n"
 
-#: pg_restore.c:494
+#: pg_restore.c:524
 #, c-format
 msgid "  --enable-row-security        enable row security\n"
 msgstr "  --enable-row-security        active la sécurité niveau ligne\n"
 
-#: pg_restore.c:496
+#: pg_restore.c:526
 #, c-format
 msgid "  --no-comments                do not restore comments\n"
 msgstr "  --no-comments                ne restaure pas les commentaires\n"
 
-#: pg_restore.c:497
+#: pg_restore.c:527
 #, c-format
 msgid ""
 "  --no-data-for-failed-tables  do not restore data of tables that could not be\n"
@@ -2766,39 +2791,39 @@ msgstr ""
 "  --no-data-for-failed-tables  ne restaure pas les données des tables qui n'ont\n"
 "                               pas pu être créées\n"
 
-#: pg_restore.c:499
+#: pg_restore.c:529
 #, c-format
 msgid "  --no-publications            do not restore publications\n"
 msgstr "  --no-publications            ne restaure pas les publications\n"
 
-#: pg_restore.c:500
+#: pg_restore.c:530
 #, c-format
 msgid "  --no-security-labels         do not restore security labels\n"
 msgstr "  --no-security-labels         ne restaure pas les labels de sécurité\n"
 
-#: pg_restore.c:501
+#: pg_restore.c:531
 #, c-format
 msgid "  --no-subscriptions           do not restore subscriptions\n"
 msgstr "  --no-subscriptions           ne restaure pas les souscriptions\n"
 
-#: pg_restore.c:502
+#: pg_restore.c:532
 #, c-format
 msgid "  --no-tablespaces             do not restore tablespace assignments\n"
 msgstr "  --no-tablespaces             ne restaure pas les affectations de tablespaces\n"
 
-#: pg_restore.c:503
+#: pg_restore.c:534
 #, c-format
 msgid "  --section=SECTION            restore named section (pre-data, data, or post-data)\n"
 msgstr ""
 "  --section=SECTION            restaure la section indiquée (pre-data, data ou\n"
 "                               post-data)\n"
 
-#: pg_restore.c:516
+#: pg_restore.c:547
 #, c-format
 msgid "  --role=ROLENAME          do SET ROLE before restore\n"
 msgstr "  --role=RÔLE                  exécute SET ROLE avant la restauration\n"
 
-#: pg_restore.c:518
+#: pg_restore.c:549
 #, c-format
 msgid ""
 "\n"
@@ -2809,7 +2834,7 @@ msgstr ""
 "Les options -I, -n, -N, -P, -t, -T et --section peuvent être combinées et\n"
 "indiquées plusieurs fois pour sélectionner plusieurs objets.\n"
 
-#: pg_restore.c:521
+#: pg_restore.c:552
 #, c-format
 msgid ""
 "\n"
index f6dcde65eaf9313178d7bcda2397c14d3a802cca..8d1516d4f927016827298697bd1836e6394cd80d 100644 (file)
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 14\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2025-07-17 18:21+0000\n"
-"PO-Revision-Date: 2025-07-19 07:10+0200\n"
+"POT-Creation-Date: 2025-09-19 19:51+0000\n"
+"PO-Revision-Date: 2025-09-20 11:00+0200\n"
 "Last-Translator: Guillaume Lelarge <guillaume@lelarge.info>\n"
 "Language-Team: French <guillaume@lelarge.info>\n"
 "Language: fr\n"
@@ -16,7 +16,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Poedit 3.6\n"
+"X-Generator: Poedit 3.7\n"
 
 #: check.c:75
 #, c-format
@@ -186,9 +186,9 @@ msgstr ""
 msgid "Creating script to delete old cluster"
 msgstr "Création du script pour supprimer l'ancienne instance"
 
-#: check.c:609 check.c:873 check.c:971 check.c:1101 check.c:1179 check.c:1553
-#: file.c:338 function.c:240 option.c:497 version.c:54 version.c:204
-#: version.c:376 version.c:511
+#: check.c:609 check.c:873 check.c:971 check.c:1101 check.c:1179 check.c:1258
+#: check.c:1553 file.c:338 function.c:240 option.c:497 version.c:54
+#: version.c:204 version.c:376 version.c:511
 #, c-format
 msgid "could not open file \"%s\": %s\n"
 msgstr "n'a pas pu ouvrir le fichier « %s » : %s\n"
@@ -253,9 +253,9 @@ msgstr "L'instance cible contient des transactions préparées\n"
 msgid "Checking for contrib/isn with bigint-passing mismatch"
 msgstr "Vérification de contrib/isn avec une différence sur le passage des bigint"
 
-#: check.c:895 check.c:996 check.c:1121 check.c:1201 check.c:1336 check.c:1395
-#: check.c:1429 check.c:1458 check.c:1576 function.c:262 version.c:278
-#: version.c:316 version.c:460
+#: check.c:895 check.c:996 check.c:1121 check.c:1201 check.c:1278 check.c:1336
+#: check.c:1395 check.c:1429 check.c:1458 check.c:1576 function.c:262
+#: version.c:278 version.c:316 version.c:460
 #, c-format
 msgid "fatal\n"
 msgstr "fatal\n"
@@ -351,16 +351,6 @@ msgstr ""
 msgid "Checking for not-null constraint inconsistencies"
 msgstr "Vérification des incohérences des contraintes NOT NULL"
 
-#: check.c:1258
-#, c-format
-msgid "could not open file \"%s\": %m"
-msgstr "n'a pas pu ouvrir le fichier « %s » : %m"
-
-#: check.c:1278
-#, c-format
-msgid "fatal"
-msgstr "fatal"
-
 #: check.c:1279
 #, c-format
 msgid ""
@@ -368,7 +358,7 @@ msgid ""
 "If the parent column(s) are NOT NULL, then the child column must\n"
 "also be marked NOT NULL, or the upgrade will fail.\n"
 "You can fix this by running\n"
-"  ALTER TABLE tablename ALTER column SET NOT NULL;\n"
+"    ALTER TABLE tablename ALTER column SET NOT NULL;\n"
 "on each column listed in the file:\n"
 "    %s\n"
 "\n"
@@ -377,7 +367,7 @@ msgstr ""
 "Si les colonnes parents sont NOT NULL, alors la colonne enfant doit\n"
 "aussi être marquée NOT NULL, sinon la mise à jour échouera.\n"
 "Vous pouvez corriger ceci en exécutant\n"
-"  ALTER TABLE tablename ALTER column SET NOT NULL;\n"
+"  ALTER TABLE nom_table ALTER nom_colonne SET NOT NULL;\n"
 "sur chaque colonne listée dans le fichier :\n"
 "    %s\n"
 "\n"
@@ -2000,3 +1990,11 @@ msgstr ""
 "when executed by psql by the database superuser will update\n"
 "these extensions.\n"
 "\n"
+
+#, c-format
+#~ msgid "could not open file \"%s\": %m"
+#~ msgstr "n'a pas pu ouvrir le fichier « %s » : %m"
+
+#, c-format
+#~ msgid "fatal"
+#~ msgstr "fatal"
index 0f8a6580e71f42ea6770af24b0185d3e204eba26..7f0ffa72f1b37b732e3a39531edd5882a665217c 100644 (file)
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 14\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2025-07-17 18:15+0000\n"
-"PO-Revision-Date: 2025-07-19 07:12+0200\n"
+"POT-Creation-Date: 2025-09-19 19:45+0000\n"
+"PO-Revision-Date: 2025-09-20 10:59+0200\n"
 "Last-Translator: Guillaume Lelarge <guillaume@lelarge.info>\n"
 "Language-Team: French <guillaume@lelarge.info>\n"
 "Language: fr\n"
@@ -17,7 +17,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Poedit 3.6\n"
+"X-Generator: Poedit 3.7\n"
 
 #: ../common/config_info.c:134 ../common/config_info.c:142 ../common/config_info.c:150 ../common/config_info.c:158 ../common/config_info.c:166 ../common/config_info.c:174 ../common/config_info.c:182 ../common/config_info.c:190
 msgid "not recorded"
@@ -80,7 +80,7 @@ msgstr "impossible d'écrire le fichier « %s » : %m"
 msgid "could not fsync file \"%s\": %m"
 msgstr "n'a pas pu synchroniser sur disque (fsync) le fichier « %s » : %m"
 
-#: ../common/cryptohash_openssl.c:104 ../common/exec.c:560 ../common/exec.c:605 ../common/exec.c:697 ../common/hmac_openssl.c:101 ../common/psprintf.c:143 ../common/stringinfo.c:305 ../port/path.c:707 ../port/path.c:745 ../port/path.c:762 access/transam/twophase.c:1399 access/transam/xlog.c:6720 lib/dshash.c:245 libpq/auth.c:1489 libpq/auth.c:1557 libpq/auth.c:2115 libpq/be-secure-gssapi.c:530 libpq/be-secure-gssapi.c:702 postmaster/bgworker.c:349 postmaster/bgworker.c:948 postmaster/postmaster.c:2552 postmaster/postmaster.c:4209 postmaster/postmaster.c:5611 postmaster/postmaster.c:5975 replication/libpqwalreceiver/libpqwalreceiver.c:287 replication/logical/logical.c:206
+#: ../common/cryptohash_openssl.c:104 ../common/exec.c:560 ../common/exec.c:605 ../common/exec.c:697 ../common/hmac_openssl.c:101 ../common/psprintf.c:143 ../common/stringinfo.c:305 ../port/path.c:707 ../port/path.c:745 ../port/path.c:762 access/transam/twophase.c:1399 access/transam/xlog.c:6720 lib/dshash.c:245 libpq/auth.c:1497 libpq/auth.c:1565 libpq/auth.c:2123 libpq/be-secure-gssapi.c:530 libpq/be-secure-gssapi.c:702 postmaster/bgworker.c:349 postmaster/bgworker.c:948 postmaster/postmaster.c:2552 postmaster/postmaster.c:4209 postmaster/postmaster.c:5611 postmaster/postmaster.c:5975 replication/libpqwalreceiver/libpqwalreceiver.c:287 replication/logical/logical.c:206
 #: replication/walsender.c:592 storage/buffer/localbuf.c:442 storage/file/fd.c:879 storage/file/fd.c:1351 storage/file/fd.c:1512 storage/file/fd.c:2320 storage/ipc/procarray.c:1472 storage/ipc/procarray.c:2293 storage/ipc/procarray.c:2300 storage/ipc/procarray.c:2805 storage/ipc/procarray.c:3482 tcop/postgres.c:3620 utils/adt/cryptohashfuncs.c:46 utils/adt/cryptohashfuncs.c:66 utils/adt/formatting.c:1699 utils/adt/formatting.c:1823 utils/adt/formatting.c:1948 utils/adt/pg_locale.c:450 utils/adt/pg_locale.c:614 utils/adt/regexp.c:223 utils/fmgr/dfmgr.c:229 utils/hash/dynahash.c:513 utils/hash/dynahash.c:613 utils/hash/dynahash.c:1116 utils/mb/mbutils.c:401 utils/mb/mbutils.c:429
 #: utils/mb/mbutils.c:814 utils/mb/mbutils.c:841 utils/misc/guc.c:5061 utils/misc/guc.c:5077 utils/misc/guc.c:5090 utils/misc/guc.c:8447 utils/misc/tzparser.c:476 utils/mmgr/aset.c:476 utils/mmgr/dsa.c:702 utils/mmgr/dsa.c:724 utils/mmgr/dsa.c:805 utils/mmgr/generation.c:234 utils/mmgr/mcxt.c:888 utils/mmgr/mcxt.c:924 utils/mmgr/mcxt.c:962 utils/mmgr/mcxt.c:1000 utils/mmgr/mcxt.c:1088 utils/mmgr/mcxt.c:1119 utils/mmgr/mcxt.c:1155 utils/mmgr/mcxt.c:1207 utils/mmgr/mcxt.c:1242 utils/mmgr/mcxt.c:1277 utils/mmgr/slab.c:238
 #, c-format
@@ -265,7 +265,7 @@ msgstr "nom du fork invalide"
 msgid "Valid fork names are \"main\", \"fsm\", \"vm\", and \"init\"."
 msgstr "Les noms de fork valides sont « main », « fsm », « vm » et « init »."
 
-#: ../common/restricted_token.c:64 libpq/auth.c:1519 libpq/auth.c:2551
+#: ../common/restricted_token.c:64 libpq/auth.c:1527 libpq/auth.c:2559
 #, c-format
 msgid "could not load library \"%s\": error code %lu"
 msgstr "n'a pas pu charger la bibliothèque « %s » : code d'erreur %lu"
@@ -338,7 +338,7 @@ msgstr ""
 msgid "could not look up effective user ID %ld: %s"
 msgstr "n'a pas pu trouver l'identifiant réel %ld de l'utilisateur : %s"
 
-#: ../common/username.c:45 libpq/auth.c:2051
+#: ../common/username.c:45 libpq/auth.c:2059
 msgid "user does not exist"
 msgstr "l'utilisateur n'existe pas"
 
@@ -746,14 +746,14 @@ msgstr "ne peut pas accéder aux index temporaires d'autres sessions"
 msgid "failed to re-find tuple within index \"%s\""
 msgstr "échec pour retrouver la ligne dans l'index « %s »"
 
-#: access/gin/ginscan.c:436
+#: access/gin/ginscan.c:479
 #, c-format
 msgid "old GIN indexes do not support whole-index scans nor searches for nulls"
 msgstr ""
 "les anciens index GIN ne supportent pas les parcours complets d'index et les\n"
 "recherches de valeurs NULL"
 
-#: access/gin/ginscan.c:437
+#: access/gin/ginscan.c:480
 #, c-format
 msgid "To fix this, do REINDEX INDEX \"%s\"."
 msgstr "Pour corriger ceci, faites un REINDEX INDEX « %s »."
@@ -926,7 +926,7 @@ msgstr "tentative de mettre à jour une ligne invisible"
 msgid "could not obtain lock on row in relation \"%s\""
 msgstr "n'a pas pu obtenir un verrou sur la relation « %s »"
 
-#: access/heap/heapam.c:6342 commands/trigger.c:3122 executor/nodeModifyTable.c:1988 executor/nodeModifyTable.c:2078
+#: access/heap/heapam.c:6342 commands/trigger.c:3152 executor/nodeModifyTable.c:1988 executor/nodeModifyTable.c:2078
 #, c-format
 msgid "tuple to be updated was already modified by an operation triggered by the current command"
 msgstr "la ligne à mettre à jour était déjà modifiée par une opération déclenchée par la commande courante"
@@ -3100,124 +3100,124 @@ msgstr "décalage invalide de l'enregistrement %X/%X"
 msgid "contrecord is requested by %X/%X"
 msgstr "« contrecord » est requis par %X/%X"
 
-#: access/transam/xlogreader.c:372 access/transam/xlogreader.c:720
+#: access/transam/xlogreader.c:372 access/transam/xlogreader.c:728
 #, c-format
 msgid "invalid record length at %X/%X: wanted %u, got %u"
 msgstr "longueur invalide de l'enregistrement à %X/%X : voulait %u, a eu %u"
 
-#: access/transam/xlogreader.c:442
+#: access/transam/xlogreader.c:443
 #, c-format
 msgid "there is no contrecord flag at %X/%X"
 msgstr "il n'existe pas de drapeau contrecord à %X/%X"
 
-#: access/transam/xlogreader.c:455
+#: access/transam/xlogreader.c:456
 #, c-format
 msgid "invalid contrecord length %u (expected %lld) at %X/%X"
 msgstr "longueur %u invalide du contrecord (%lld attendu) à %X/%X"
 
-#: access/transam/xlogreader.c:728
+#: access/transam/xlogreader.c:736
 #, c-format
 msgid "invalid resource manager ID %u at %X/%X"
 msgstr "identifiant du gestionnaire de ressources invalide %u à %X/%X"
 
-#: access/transam/xlogreader.c:741 access/transam/xlogreader.c:757
+#: access/transam/xlogreader.c:749 access/transam/xlogreader.c:765
 #, c-format
 msgid "record with incorrect prev-link %X/%X at %X/%X"
 msgstr "enregistrement avec prev-link %X/%X incorrect à %X/%X"
 
-#: access/transam/xlogreader.c:795
+#: access/transam/xlogreader.c:803
 #, c-format
 msgid "incorrect resource manager data checksum in record at %X/%X"
 msgstr ""
 "somme de contrôle des données du gestionnaire de ressources incorrecte à\n"
 "l'enregistrement %X/%X"
 
-#: access/transam/xlogreader.c:832
+#: access/transam/xlogreader.c:840
 #, c-format
 msgid "invalid magic number %04X in log segment %s, offset %u"
 msgstr "numéro magique invalide %04X dans le segment %s, décalage %u"
 
-#: access/transam/xlogreader.c:846 access/transam/xlogreader.c:887
+#: access/transam/xlogreader.c:854 access/transam/xlogreader.c:895
 #, c-format
 msgid "invalid info bits %04X in log segment %s, offset %u"
 msgstr "bits d'information %04X invalides dans le segment %s, décalage %u"
 
-#: access/transam/xlogreader.c:861
+#: access/transam/xlogreader.c:869
 #, c-format
 msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu"
 msgstr "Le fichier WAL provient d'une instance différente : l'identifiant système de la base dans le fichier WAL est %llu, alors que l'identifiant système de la base dans pg_control est %llu"
 
-#: access/transam/xlogreader.c:869
+#: access/transam/xlogreader.c:877
 #, c-format
 msgid "WAL file is from different database system: incorrect segment size in page header"
 msgstr "Le fichier WAL provient d'une instance différente : taille invalide du segment dans l'en-tête de page"
 
-#: access/transam/xlogreader.c:875
+#: access/transam/xlogreader.c:883
 #, c-format
 msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header"
 msgstr "Le fichier WAL provient d'une instance différente : XLOG_BLCKSZ incorrect dans l'en-tête de page"
 
-#: access/transam/xlogreader.c:906
+#: access/transam/xlogreader.c:914
 #, c-format
 msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
 msgstr "pageaddr %X/%X inattendue dans le journal de transactions %s, segment %u"
 
-#: access/transam/xlogreader.c:931
+#: access/transam/xlogreader.c:939
 #, c-format
 msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
 msgstr "identifiant timeline %u hors de la séquence (après %u) dans le segment %s, décalage %u"
 
-#: access/transam/xlogreader.c:1276
+#: access/transam/xlogreader.c:1284
 #, c-format
 msgid "out-of-order block_id %u at %X/%X"
 msgstr "block_id %u désordonné à %X/%X"
 
-#: access/transam/xlogreader.c:1298
+#: access/transam/xlogreader.c:1306
 #, c-format
 msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X"
 msgstr "BKPBLOCK_HAS_DATA configuré, mais aucune donnée inclus à %X/%X"
 
-#: access/transam/xlogreader.c:1305
+#: access/transam/xlogreader.c:1313
 #, c-format
 msgid "BKPBLOCK_HAS_DATA not set, but data length is %u at %X/%X"
 msgstr "BKPBLOCK_HAS_DATA non configuré, mais la longueur des données est %u à %X/%X"
 
-#: access/transam/xlogreader.c:1341
+#: access/transam/xlogreader.c:1349
 #, c-format
 msgid "BKPIMAGE_HAS_HOLE set, but hole offset %u length %u block image length %u at %X/%X"
 msgstr "BKPIMAGE_HAS_HOLE activé, mais décalage trou %u longueur %u longueur image bloc %u à %X/%X"
 
-#: access/transam/xlogreader.c:1357
+#: access/transam/xlogreader.c:1365
 #, c-format
 msgid "BKPIMAGE_HAS_HOLE not set, but hole offset %u length %u at %X/%X"
 msgstr "BKPIMAGE_HAS_HOLE désactivé, mais décalage trou %u longueur %u à %X/%X"
 
-#: access/transam/xlogreader.c:1372
+#: access/transam/xlogreader.c:1380
 #, c-format
 msgid "BKPIMAGE_IS_COMPRESSED set, but block image length %u at %X/%X"
 msgstr "BKPIMAGE_IS_COMPRESSED configuré, mais la longueur de l'image du bloc est %u à %X/%X"
 
-#: access/transam/xlogreader.c:1387
+#: access/transam/xlogreader.c:1395
 #, c-format
 msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_IS_COMPRESSED set, but block image length is %u at %X/%X"
 msgstr "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_IS_COMPRESSED configuré, mais la longueur de l'image du bloc est %u à %X/%X"
 
-#: access/transam/xlogreader.c:1403
+#: access/transam/xlogreader.c:1411
 #, c-format
 msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X"
 msgstr "BKPBLOCK_SAME_REL configuré, mais pas de relation précédente à %X/%X"
 
-#: access/transam/xlogreader.c:1415
+#: access/transam/xlogreader.c:1423
 #, c-format
 msgid "invalid block_id %u at %X/%X"
 msgstr "block_id %u invalide à %X/%X"
 
-#: access/transam/xlogreader.c:1502
+#: access/transam/xlogreader.c:1510
 #, c-format
 msgid "record with invalid length at %X/%X"
 msgstr "enregistrement de longueur invalide à %X/%X"
 
-#: access/transam/xlogreader.c:1591
+#: access/transam/xlogreader.c:1599
 #, c-format
 msgid "invalid compressed image at %X/%X, block %d"
 msgstr "image compressée invalide à %X/%X, bloc %d"
@@ -3886,7 +3886,7 @@ msgstr "l'extension d'OID %u n'existe pas"
 msgid "publication with OID %u does not exist"
 msgstr "la publication d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:5405 commands/subscriptioncmds.c:1463
+#: catalog/aclchk.c:5405 commands/subscriptioncmds.c:1465
 #, c-format
 msgid "subscription with OID %u does not exist"
 msgstr "la souscription d'OID %u n'existe pas"
@@ -3985,7 +3985,7 @@ msgstr[1] ""
 msgid "cannot drop %s because other objects depend on it"
 msgstr "n'a pas pu supprimer %s car d'autres objets en dépendent"
 
-#: catalog/dependency.c:1204 catalog/dependency.c:1211 catalog/dependency.c:1223 commands/tablecmds.c:1301 commands/tablecmds.c:14064 commands/tablespace.c:464 commands/user.c:1095 commands/view.c:506 libpq/auth.c:338 replication/syncrep.c:1110 storage/lmgr/deadlock.c:1151 storage/lmgr/proc.c:1447 utils/misc/guc.c:7140 utils/misc/guc.c:7176 utils/misc/guc.c:7246 utils/misc/guc.c:11490 utils/misc/guc.c:11524 utils/misc/guc.c:11558 utils/misc/guc.c:11601 utils/misc/guc.c:11643
+#: catalog/dependency.c:1204 catalog/dependency.c:1211 catalog/dependency.c:1223 commands/tablecmds.c:1301 commands/tablecmds.c:14064 commands/tablespace.c:464 commands/user.c:1095 commands/view.c:506 libpq/auth.c:346 replication/syncrep.c:1110 storage/lmgr/deadlock.c:1151 storage/lmgr/proc.c:1447 utils/misc/guc.c:7140 utils/misc/guc.c:7176 utils/misc/guc.c:7246 utils/misc/guc.c:11490 utils/misc/guc.c:11524 utils/misc/guc.c:11558 utils/misc/guc.c:11601 utils/misc/guc.c:11643
 #, c-format
 msgid "%s"
 msgstr "%s"
@@ -4269,7 +4269,7 @@ msgstr "l'index « %s » a été réindexée"
 msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping"
 msgstr "ne peut pas réindexer l'index invalide « %s.%s » sur une table TOAST, ignoré"
 
-#: catalog/namespace.c:259 catalog/namespace.c:463 catalog/namespace.c:555 commands/trigger.c:5255
+#: catalog/namespace.c:259 catalog/namespace.c:463 catalog/namespace.c:555 commands/trigger.c:5285
 #, c-format
 msgid "cross-database references are not implemented: \"%s.%s.%s\""
 msgstr "les références entre bases de données ne sont pas implémentées : « %s.%s.%s »"
@@ -5384,17 +5384,17 @@ msgstr ""
 "ne peut pas réaffecter les objets appartenant à %s car ils sont nécessaires au\n"
 "système de bases de données"
 
-#: catalog/pg_subscription.c:174 commands/subscriptioncmds.c:779 commands/subscriptioncmds.c:1088 commands/subscriptioncmds.c:1431
+#: catalog/pg_subscription.c:174 commands/subscriptioncmds.c:779 commands/subscriptioncmds.c:1090 commands/subscriptioncmds.c:1433
 #, c-format
 msgid "subscription \"%s\" does not exist"
 msgstr "la souscription « %s » n'existe pas"
 
-#: catalog/pg_subscription.c:432
+#: catalog/pg_subscription.c:457
 #, c-format
 msgid "could not drop relation mapping for subscription \"%s\""
 msgstr "n'a pas pu supprimer la correspondance des relations pour la souscription « %s »"
 
-#: catalog/pg_subscription.c:434
+#: catalog/pg_subscription.c:459
 #, c-format
 msgid "Table synchronization for relation \"%s\" is in progress and is in state \"%c\"."
 msgstr "La synchronization de la table « %s » est en cours et est dans l'état « %c »."
@@ -5402,7 +5402,7 @@ msgstr "La synchronization de la table « %s » est en cours et est dans l'état
 #. translator: first %s is a SQL ALTER command and second %s is a
 #. SQL DROP command
 #.
-#: catalog/pg_subscription.c:441
+#: catalog/pg_subscription.c:466
 #, c-format
 msgid "Use %s to enable subscription if not already enabled or use %s to drop the subscription."
 msgstr "Utiliser %s pour activer la souscription si elle n'est pas déjà activée ou utiliser %s pour supprimer la souscription."
@@ -8444,7 +8444,7 @@ msgstr "nom de curseur invalide : il ne doit pas être vide"
 msgid "cannot create a cursor WITH HOLD within security-restricted operation"
 msgstr "ne peut pas créer un curseur WITH HOLD à l'intérieur d'une opération restreinte pour sécurité"
 
-#: commands/portalcmds.c:189 commands/portalcmds.c:242 executor/execCurrent.c:70 utils/adt/xml.c:2643 utils/adt/xml.c:2813
+#: commands/portalcmds.c:189 commands/portalcmds.c:242 executor/execCurrent.c:70 utils/adt/xml.c:2637 utils/adt/xml.c:2807
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "le curseur « %s » n'existe pas"
@@ -8718,7 +8718,7 @@ msgstr "ne peut pas modifier le propriétaire de la séquence d'identité"
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "La séquence « %s » est liée à la table « %s »."
 
-#: commands/statscmds.c:112 commands/statscmds.c:121 tcop/utility.c:1866
+#: commands/statscmds.c:112 commands/statscmds.c:121
 #, c-format
 msgid "only a single relation is allowed in CREATE STATISTICS"
 msgstr "seule une relation seule est acceptée dans CREATE STATISTICS"
@@ -8820,7 +8820,7 @@ msgstr "la souscription avec %s doit aussi configurer %s"
 msgid "must be superuser to create subscriptions"
 msgstr "doit être super-utilisateur pour créer des souscriptions"
 
-#: commands/subscriptioncmds.c:474 commands/subscriptioncmds.c:572 replication/logical/tablesync.c:985 replication/logical/worker.c:3226
+#: commands/subscriptioncmds.c:474 commands/subscriptioncmds.c:572 replication/logical/tablesync.c:1006 replication/logical/worker.c:3233
 #, c-format
 msgid "could not connect to the publisher: %s"
 msgstr "n'a pas pu se connecter au publieur : %s"
@@ -8861,63 +8861,63 @@ msgstr "Utilisez ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = fals
 msgid "ALTER SUBSCRIPTION ... REFRESH is not allowed for disabled subscriptions"
 msgstr "ALTER SUBSCRIPTION ... REFRESH n'est pas autorisé pour les souscriptions désactivées"
 
-#: commands/subscriptioncmds.c:1092
+#: commands/subscriptioncmds.c:1094
 #, c-format
 msgid "subscription \"%s\" does not exist, skipping"
 msgstr "la souscription « %s » n'existe pas, poursuite du traitement"
 
-#: commands/subscriptioncmds.c:1344
+#: commands/subscriptioncmds.c:1346
 #, c-format
 msgid "dropped replication slot \"%s\" on publisher"
 msgstr "slot de réplication « %s » supprimé sur le publieur"
 
-#: commands/subscriptioncmds.c:1353 commands/subscriptioncmds.c:1361
+#: commands/subscriptioncmds.c:1355 commands/subscriptioncmds.c:1363
 #, c-format
 msgid "could not drop replication slot \"%s\" on publisher: %s"
 msgstr "n'a pas pu supprimer le slot de réplication « %s » sur le publieur : %s"
 
-#: commands/subscriptioncmds.c:1395
+#: commands/subscriptioncmds.c:1397
 #, c-format
 msgid "permission denied to change owner of subscription \"%s\""
 msgstr "droit refusé pour modifier le propriétaire de la souscription « %s »"
 
-#: commands/subscriptioncmds.c:1397
+#: commands/subscriptioncmds.c:1399
 #, c-format
 msgid "The owner of a subscription must be a superuser."
 msgstr "Le propriétaire d'une souscription doit être un super-utilisateur."
 
-#: commands/subscriptioncmds.c:1513
+#: commands/subscriptioncmds.c:1515
 #, c-format
 msgid "could not receive list of replicated tables from the publisher: %s"
 msgstr "n'a pas pu recevoir la liste des tables répliquées à partir du publieur : %s"
 
-#: commands/subscriptioncmds.c:1578
+#: commands/subscriptioncmds.c:1580
 #, c-format
 msgid "could not connect to publisher when attempting to drop replication slot \"%s\": %s"
 msgstr "n'a pas pu se connecter au publieur lors de la tentative de suppression du slot de réplication « %s » : %s"
 
 #. translator: %s is an SQL ALTER command
-#: commands/subscriptioncmds.c:1581
+#: commands/subscriptioncmds.c:1583
 #, c-format
 msgid "Use %s to disable the subscription, and then use %s to disassociate it from the slot."
 msgstr "Utilisez %s pour désactiver l'abonnement, puis utilisez %s pour le dissocier du slot"
 
-#: commands/subscriptioncmds.c:1612
+#: commands/subscriptioncmds.c:1614
 #, c-format
 msgid "publication name \"%s\" used more than once"
 msgstr "nom de publication « %s » utilisé plus d'une fois"
 
-#: commands/subscriptioncmds.c:1656
+#: commands/subscriptioncmds.c:1658
 #, c-format
 msgid "publication \"%s\" is already in subscription \"%s\""
 msgstr "la publication « %s » est déjà dans la souscription « %s »"
 
-#: commands/subscriptioncmds.c:1670
+#: commands/subscriptioncmds.c:1672
 #, c-format
 msgid "publication \"%s\" is not in subscription \"%s\""
 msgstr "la publication « %s » n'est pas dans la souscription « %s »"
 
-#: commands/subscriptioncmds.c:1681
+#: commands/subscriptioncmds.c:1683
 #, c-format
 msgid "cannot drop all the publications from a subscription"
 msgstr "ne peut pas supprimer toutes les publications d'une souscription"
@@ -10724,52 +10724,57 @@ msgstr "le trigger « %s » de la table « %s » n'existe pas"
 msgid "permission denied: \"%s\" is a system trigger"
 msgstr "droit refusé : « %s » est un trigger système"
 
-#: commands/trigger.c:2221
+#: commands/trigger.c:2223
 #, c-format
 msgid "trigger function %u returned null value"
 msgstr "la fonction trigger %u a renvoyé la valeur NULL"
 
-#: commands/trigger.c:2281 commands/trigger.c:2495 commands/trigger.c:2734 commands/trigger.c:3056
+#: commands/trigger.c:2283 commands/trigger.c:2506 commands/trigger.c:2754 commands/trigger.c:3086
 #, c-format
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "un trigger BEFORE STATEMENT ne peut pas renvoyer une valeur"
 
-#: commands/trigger.c:2355
+#: commands/trigger.c:2357
 #, c-format
 msgid "moving row to another partition during a BEFORE FOR EACH ROW trigger is not supported"
 msgstr "le déplacement de la ligne vers une autre partition par un trigger BEFORE FOR EACH ROW n'est pas supporté"
 
-#: commands/trigger.c:2356
+#: commands/trigger.c:2358
 #, c-format
 msgid "Before executing trigger \"%s\", the row was to be in partition \"%s.%s\"."
 msgstr "Avant d'exécuter le trigger « %s », la ligne devait aller dans la partition « %s.%s »."
 
-#: commands/trigger.c:3123 executor/nodeModifyTable.c:1334 executor/nodeModifyTable.c:1408 executor/nodeModifyTable.c:1989 executor/nodeModifyTable.c:2079
+#: commands/trigger.c:2387 commands/trigger.c:2627 commands/trigger.c:2941
+#, c-format
+msgid "cannot collect transition tuples from child foreign tables"
+msgstr "ne peut pas récupérer les lignes de transactions à partir des tables distantes enfants"
+
+#: commands/trigger.c:3153 executor/nodeModifyTable.c:1334 executor/nodeModifyTable.c:1408 executor/nodeModifyTable.c:1989 executor/nodeModifyTable.c:2079
 #, c-format
 msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows."
 msgstr "Considérez l'utilisation d'un trigger AFTER au lieu d'un trigger BEFORE pour propager les changements sur les autres lignes."
 
-#: commands/trigger.c:3152 executor/nodeLockRows.c:229 executor/nodeLockRows.c:238 executor/nodeModifyTable.c:258 executor/nodeModifyTable.c:1350 executor/nodeModifyTable.c:2006 executor/nodeModifyTable.c:2252
+#: commands/trigger.c:3182 executor/nodeLockRows.c:229 executor/nodeLockRows.c:238 executor/nodeModifyTable.c:258 executor/nodeModifyTable.c:1350 executor/nodeModifyTable.c:2006 executor/nodeModifyTable.c:2252
 #, c-format
 msgid "could not serialize access due to concurrent update"
 msgstr "n'a pas pu sérialiser un accès à cause d'une mise à jour en parallèle"
 
-#: commands/trigger.c:3160 executor/nodeModifyTable.c:1440 executor/nodeModifyTable.c:2096 executor/nodeModifyTable.c:2276
+#: commands/trigger.c:3190 executor/nodeModifyTable.c:1440 executor/nodeModifyTable.c:2096 executor/nodeModifyTable.c:2276
 #, c-format
 msgid "could not serialize access due to concurrent delete"
 msgstr "n'a pas pu sérialiser un accès à cause d'une suppression en parallèle"
 
-#: commands/trigger.c:4254
+#: commands/trigger.c:4284
 #, c-format
 msgid "cannot fire deferred trigger within security-restricted operation"
 msgstr "ne peut pas déclencher un trigger déferré à l'intérieur d'une opération restreinte pour sécurité"
 
-#: commands/trigger.c:5306
+#: commands/trigger.c:5336
 #, c-format
 msgid "constraint \"%s\" is not deferrable"
 msgstr "la contrainte « %s » n'est pas DEFERRABLE"
 
-#: commands/trigger.c:5329
+#: commands/trigger.c:5359
 #, c-format
 msgid "constraint \"%s\" does not exist"
 msgstr "la contrainte « %s » n'existe pas"
@@ -11809,7 +11814,7 @@ msgstr ""
 msgid "Table has type %s at ordinal position %d, but query expects %s."
 msgstr "La table a le type %s à la position ordinale %d alors que la requête attend %s."
 
-#: executor/execExpr.c:1098 parser/parse_agg.c:828
+#: executor/execExpr.c:1098 parser/parse_agg.c:854
 #, c-format
 msgid "window function calls cannot be nested"
 msgstr "les appels à la fonction window ne peuvent pas être imbriqués"
@@ -11957,157 +11962,157 @@ msgstr "La clé %s est en conflit avec la clé existante %s."
 msgid "Key conflicts with existing key."
 msgstr "La clé est en conflit avec une clé existante."
 
-#: executor/execMain.c:1006
+#: executor/execMain.c:1016
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "ne peut pas modifier la séquence « %s »"
 
-#: executor/execMain.c:1012
+#: executor/execMain.c:1022
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "ne peut pas modifier la relation TOAST « %s »"
 
-#: executor/execMain.c:1030 rewrite/rewriteHandler.c:3145 rewrite/rewriteHandler.c:3990
+#: executor/execMain.c:1040 rewrite/rewriteHandler.c:3145 rewrite/rewriteHandler.c:3990
 #, c-format
 msgid "cannot insert into view \"%s\""
 msgstr "ne peut pas insérer dans la vue « %s »"
 
-#: executor/execMain.c:1032 rewrite/rewriteHandler.c:3148 rewrite/rewriteHandler.c:3993
+#: executor/execMain.c:1042 rewrite/rewriteHandler.c:3148 rewrite/rewriteHandler.c:3993
 #, c-format
 msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule."
 msgstr "Pour activer l'insertion dans la vue, fournissez un trigger INSTEAD OF INSERT ou une règle ON INSERT DO INSTEAD sans condition."
 
-#: executor/execMain.c:1038 rewrite/rewriteHandler.c:3153 rewrite/rewriteHandler.c:3998
+#: executor/execMain.c:1048 rewrite/rewriteHandler.c:3153 rewrite/rewriteHandler.c:3998
 #, c-format
 msgid "cannot update view \"%s\""
 msgstr "ne peut pas mettre à jour la vue « %s »"
 
-#: executor/execMain.c:1040 rewrite/rewriteHandler.c:3156 rewrite/rewriteHandler.c:4001
+#: executor/execMain.c:1050 rewrite/rewriteHandler.c:3156 rewrite/rewriteHandler.c:4001
 #, c-format
 msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule."
 msgstr "Pour activer la mise à jour dans la vue, fournissez un trigger INSTEAD OF UPDATE ou une règle ON UPDATE DO INSTEAD sans condition."
 
-#: executor/execMain.c:1046 rewrite/rewriteHandler.c:3161 rewrite/rewriteHandler.c:4006
+#: executor/execMain.c:1056 rewrite/rewriteHandler.c:3161 rewrite/rewriteHandler.c:4006
 #, c-format
 msgid "cannot delete from view \"%s\""
 msgstr "ne peut pas supprimer à partir de la vue « %s »"
 
-#: executor/execMain.c:1048 rewrite/rewriteHandler.c:3164 rewrite/rewriteHandler.c:4009
+#: executor/execMain.c:1058 rewrite/rewriteHandler.c:3164 rewrite/rewriteHandler.c:4009
 #, c-format
 msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule."
 msgstr "Pour activer la suppression dans la vue, fournissez un trigger INSTEAD OF DELETE ou une règle ON DELETE DO INSTEAD sans condition."
 
-#: executor/execMain.c:1059
+#: executor/execMain.c:1069
 #, c-format
 msgid "cannot change materialized view \"%s\""
 msgstr "ne peut pas modifier la vue matérialisée « %s »"
 
-#: executor/execMain.c:1071
+#: executor/execMain.c:1081
 #, c-format
 msgid "cannot insert into foreign table \"%s\""
 msgstr "ne peut pas insérer dans la table distante « %s »"
 
-#: executor/execMain.c:1077
+#: executor/execMain.c:1087
 #, c-format
 msgid "foreign table \"%s\" does not allow inserts"
 msgstr "la table distante « %s » n'autorise pas les insertions"
 
-#: executor/execMain.c:1084
+#: executor/execMain.c:1094
 #, c-format
 msgid "cannot update foreign table \"%s\""
 msgstr "ne peut pas modifier la table distante « %s »"
 
-#: executor/execMain.c:1090
+#: executor/execMain.c:1100
 #, c-format
 msgid "foreign table \"%s\" does not allow updates"
 msgstr "la table distante « %s » n'autorise pas les modifications"
 
-#: executor/execMain.c:1097
+#: executor/execMain.c:1107
 #, c-format
 msgid "cannot delete from foreign table \"%s\""
 msgstr "ne peut pas supprimer à partir de la table distante « %s »"
 
-#: executor/execMain.c:1103
+#: executor/execMain.c:1113
 #, c-format
 msgid "foreign table \"%s\" does not allow deletes"
 msgstr "la table distante « %s » n'autorise pas les suppressions"
 
-#: executor/execMain.c:1114
+#: executor/execMain.c:1124
 #, c-format
 msgid "cannot change relation \"%s\""
 msgstr "ne peut pas modifier la relation « %s »"
 
-#: executor/execMain.c:1141
+#: executor/execMain.c:1161
 #, c-format
 msgid "cannot lock rows in sequence \"%s\""
 msgstr "ne peut pas verrouiller les lignes dans la séquence « %s »"
 
-#: executor/execMain.c:1148
+#: executor/execMain.c:1168
 #, c-format
 msgid "cannot lock rows in TOAST relation \"%s\""
 msgstr "ne peut pas verrouiller les lignes dans la relation TOAST « %s »"
 
-#: executor/execMain.c:1155
+#: executor/execMain.c:1175
 #, c-format
 msgid "cannot lock rows in view \"%s\""
 msgstr "ne peut pas verrouiller les lignes dans la vue « %s »"
 
-#: executor/execMain.c:1163
+#: executor/execMain.c:1183
 #, c-format
 msgid "cannot lock rows in materialized view \"%s\""
 msgstr "ne peut pas verrouiller les lignes dans la vue matérialisée « %s »"
 
-#: executor/execMain.c:1172 executor/execMain.c:2593 executor/nodeLockRows.c:136
+#: executor/execMain.c:1192 executor/execMain.c:2613 executor/nodeLockRows.c:136
 #, c-format
 msgid "cannot lock rows in foreign table \"%s\""
 msgstr "ne peut pas verrouiller la table distante « %s »"
 
-#: executor/execMain.c:1178
+#: executor/execMain.c:1198
 #, c-format
 msgid "cannot lock rows in relation \"%s\""
 msgstr "n'a pas pu verrouiller les lignes dans la relation « %s »"
 
-#: executor/execMain.c:1807
+#: executor/execMain.c:1827
 #, c-format
 msgid "new row for relation \"%s\" violates partition constraint"
 msgstr "la nouvelle ligne de la relation « %s » viole la contrainte de partitionnement"
 
-#: executor/execMain.c:1809 executor/execMain.c:1892 executor/execMain.c:1942 executor/execMain.c:2051
+#: executor/execMain.c:1829 executor/execMain.c:1912 executor/execMain.c:1962 executor/execMain.c:2071
 #, c-format
 msgid "Failing row contains %s."
 msgstr "La ligne en échec contient %s."
 
-#: executor/execMain.c:1889
+#: executor/execMain.c:1909
 #, c-format
 msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint"
 msgstr "une valeur NULL viole la contrainte NOT NULL de la colonne « %s » dans la relation « %s »"
 
-#: executor/execMain.c:1940
+#: executor/execMain.c:1960
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "la nouvelle ligne de la relation « %s » viole la contrainte de vérification « %s »"
 
-#: executor/execMain.c:2049
+#: executor/execMain.c:2069
 #, c-format
 msgid "new row violates check option for view \"%s\""
 msgstr "la nouvelle ligne viole la contrainte de vérification pour la vue « %s »"
 
-#: executor/execMain.c:2059
+#: executor/execMain.c:2079
 #, c-format
 msgid "new row violates row-level security policy \"%s\" for table \"%s\""
 msgstr "la nouvelle ligne viole la politique de sécurité au niveau ligne « %s » pour la table « %s »"
 
-#: executor/execMain.c:2064
+#: executor/execMain.c:2084
 #, c-format
 msgid "new row violates row-level security policy for table \"%s\""
 msgstr "la nouvelle ligne viole la politique de sécurité au niveau ligne pour la table « %s »"
 
-#: executor/execMain.c:2071
+#: executor/execMain.c:2091
 #, c-format
 msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\""
 msgstr "la nouvelle ligne viole la politique de sécurité au niveau ligne « %s » (expression USING) pour la table « %s »"
 
-#: executor/execMain.c:2076
+#: executor/execMain.c:2096
 #, c-format
 msgid "new row violates row-level security policy (USING expression) for table \"%s\""
 msgstr "la nouvelle ligne viole la politique de sécurité au niveau ligne (expression USING) pour la table « %s »"
@@ -12415,7 +12420,7 @@ msgstr "le paramètre de TABLESAMPLE ne peut pas être NULL"
 msgid "TABLESAMPLE REPEATABLE parameter cannot be null"
 msgstr "le paramètre TABLESAMPLE REPEATABLE ne peut pas être NULL"
 
-#: executor/nodeSubplan.c:325 executor/nodeSubplan.c:351 executor/nodeSubplan.c:405 executor/nodeSubplan.c:1174
+#: executor/nodeSubplan.c:306 executor/nodeSubplan.c:332 executor/nodeSubplan.c:386 executor/nodeSubplan.c:1158
 #, c-format
 msgid "more than one row returned by a subquery used as an expression"
 msgstr "plus d'une ligne renvoyée par une sous-requête utilisée comme une expression"
@@ -12562,7 +12567,7 @@ msgstr "n'a pas pu envoyer la ligne dans la queue en mémoire partagée"
 msgid "user mapping not found for \"%s\""
 msgstr "correspondance utilisateur non trouvée pour « %s »"
 
-#: foreign/foreign.c:331 optimizer/plan/createplan.c:7047 optimizer/util/plancat.c:474
+#: foreign/foreign.c:331 optimizer/plan/createplan.c:7049 optimizer/util/plancat.c:474
 #, c-format
 msgid "access to non-system foreign table is restricted"
 msgstr "l'accès à la table externe non système est restreint"
@@ -13214,117 +13219,117 @@ msgstr "Preuve malformée dans le client-final-message."
 msgid "Garbage found at the end of client-final-message."
 msgstr "Problème trouvé à la fin de client-final-message."
 
-#: libpq/auth.c:284
+#: libpq/auth.c:292
 #, c-format
 msgid "authentication failed for user \"%s\": host rejected"
 msgstr "authentification échouée pour l'utilisateur « %s » : hôte rejeté"
 
-#: libpq/auth.c:287
+#: libpq/auth.c:295
 #, c-format
 msgid "\"trust\" authentication failed for user \"%s\""
 msgstr "authentification « trust » échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:290
+#: libpq/auth.c:298
 #, c-format
 msgid "Ident authentication failed for user \"%s\""
 msgstr "Échec de l'authentification Ident pour l'utilisateur « %s »"
 
-#: libpq/auth.c:293
+#: libpq/auth.c:301
 #, c-format
 msgid "Peer authentication failed for user \"%s\""
 msgstr "authentification peer échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:298
+#: libpq/auth.c:306
 #, c-format
 msgid "password authentication failed for user \"%s\""
 msgstr "authentification par mot de passe échouée pour l'utilisateur  « %s »"
 
-#: libpq/auth.c:303
+#: libpq/auth.c:311
 #, c-format
 msgid "GSSAPI authentication failed for user \"%s\""
 msgstr "authentification GSSAPI échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:306
+#: libpq/auth.c:314
 #, c-format
 msgid "SSPI authentication failed for user \"%s\""
 msgstr "authentification SSPI échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:309
+#: libpq/auth.c:317
 #, c-format
 msgid "PAM authentication failed for user \"%s\""
 msgstr "authentification PAM échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:312
+#: libpq/auth.c:320
 #, c-format
 msgid "BSD authentication failed for user \"%s\""
 msgstr "authentification BSD échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:315
+#: libpq/auth.c:323
 #, c-format
 msgid "LDAP authentication failed for user \"%s\""
 msgstr "authentification LDAP échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:318
+#: libpq/auth.c:326
 #, c-format
 msgid "certificate authentication failed for user \"%s\""
 msgstr "authentification par le certificat échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:321
+#: libpq/auth.c:329
 #, c-format
 msgid "RADIUS authentication failed for user \"%s\""
 msgstr "authentification RADIUS échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:324
+#: libpq/auth.c:332
 #, c-format
 msgid "authentication failed for user \"%s\": invalid authentication method"
 msgstr "authentification échouée pour l'utilisateur « %s » : méthode d'authentification invalide"
 
-#: libpq/auth.c:328
+#: libpq/auth.c:336
 #, c-format
 msgid "Connection matched pg_hba.conf line %d: \"%s\""
 msgstr "La connexion correspond à la ligne %d du pg_hba.conf : « %s »"
 
-#: libpq/auth.c:371
+#: libpq/auth.c:379
 #, c-format
 msgid "authentication identifier set more than once"
 msgstr "identifiant d'authentification configuré plus d'une fois"
 
-#: libpq/auth.c:372
+#: libpq/auth.c:380
 #, c-format
 msgid "previous identifier: \"%s\"; new identifier: \"%s\""
 msgstr "identifiant précédent : « %s » ; nouvel identifiant : « %s »"
 
-#: libpq/auth.c:381
+#: libpq/auth.c:389
 #, c-format
 msgid "connection authenticated: identity=\"%s\" method=%s (%s:%d)"
 msgstr "connexion authentifiée : identité=\"%s\" méthode=%s (%s:%d)"
 
-#: libpq/auth.c:420
+#: libpq/auth.c:428
 #, c-format
 msgid "client certificates can only be checked if a root certificate store is available"
 msgstr ""
 "les certificats cert peuvent seulement être vérifiés si un emplacement de\n"
 "certificat racine est disponible"
 
-#: libpq/auth.c:431
+#: libpq/auth.c:439
 #, c-format
 msgid "connection requires a valid client certificate"
 msgstr "la connexion requiert un certificat client valide"
 
-#: libpq/auth.c:462 libpq/auth.c:508
+#: libpq/auth.c:470 libpq/auth.c:516
 msgid "GSS encryption"
 msgstr "chiffrement GSS"
 
-#: libpq/auth.c:465 libpq/auth.c:511
+#: libpq/auth.c:473 libpq/auth.c:519
 msgid "SSL encryption"
 msgstr "chiffrement SSL"
 
-#: libpq/auth.c:467 libpq/auth.c:513
+#: libpq/auth.c:475 libpq/auth.c:521
 msgid "no encryption"
 msgstr "aucun chiffrement"
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:473
+#: libpq/auth.c:481
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
 msgstr ""
@@ -13332,40 +13337,40 @@ msgstr ""
 "utilisateur « %s », %s"
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:480
+#: libpq/auth.c:488
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr ""
 "pg_hba.conf rejette la connexion pour l'hôte « %s », utilisateur « %s », base\n"
 "de données « %s », %s"
 
-#: libpq/auth.c:518
+#: libpq/auth.c:526
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup matches."
 msgstr "Adresse IP du client résolue en « %s », la recherche inverse correspond bien."
 
-#: libpq/auth.c:521
+#: libpq/auth.c:529
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup not checked."
 msgstr "Adresse IP du client résolue en « %s », la recherche inverse n'est pas vérifiée."
 
-#: libpq/auth.c:524
+#: libpq/auth.c:532
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup does not match."
 msgstr "Adresse IP du client résolue en « %s », la recherche inverse ne correspond pas."
 
-#: libpq/auth.c:527
+#: libpq/auth.c:535
 #, c-format
 msgid "Could not translate client host name \"%s\" to IP address: %s."
 msgstr "N'a pas pu traduire le nom d'hôte « %s » du client en adresse IP : %s."
 
-#: libpq/auth.c:532
+#: libpq/auth.c:540
 #, c-format
 msgid "Could not resolve client IP address to a host name: %s."
 msgstr "N'a pas pu résoudre l'adresse IP du client à partir du nom d'hôte : %s."
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:540
+#: libpq/auth.c:548
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\", %s"
 msgstr ""
@@ -13373,424 +13378,424 @@ msgstr ""
 "l'hôte « %s », utilisateur « %s », %s"
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:548
+#: libpq/auth.c:556
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr ""
 "aucune entrée dans pg_hba.conf pour l'hôte « %s », utilisateur « %s »,\n"
 "base de données « %s », %s"
 
-#: libpq/auth.c:721
+#: libpq/auth.c:729
 #, c-format
 msgid "expected password response, got message type %d"
 msgstr "en attente du mot de passe, a reçu un type de message %d"
 
-#: libpq/auth.c:742
+#: libpq/auth.c:750
 #, c-format
 msgid "invalid password packet size"
 msgstr "taille du paquet du mot de passe invalide"
 
-#: libpq/auth.c:760
+#: libpq/auth.c:768
 #, c-format
 msgid "empty password returned by client"
 msgstr "mot de passe vide renvoyé par le client"
 
-#: libpq/auth.c:885 libpq/hba.c:1366
+#: libpq/auth.c:893 libpq/hba.c:1366
 #, c-format
 msgid "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
 msgstr "l'authentification MD5 n'est pas supportée quand « db_user_namespace » est activé"
 
-#: libpq/auth.c:891
+#: libpq/auth.c:899
 #, c-format
 msgid "could not generate random MD5 salt"
 msgstr "n'a pas pu générer le sel MD5 aléatoire"
 
-#: libpq/auth.c:957
+#: libpq/auth.c:965
 #, c-format
 msgid "expected SASL response, got message type %d"
 msgstr "attendait une réponse SASL, a reçu le type de message %d"
 
-#: libpq/auth.c:1086 libpq/be-secure-gssapi.c:545
+#: libpq/auth.c:1094 libpq/be-secure-gssapi.c:545
 #, c-format
 msgid "could not set environment: %m"
 msgstr "n'a pas pu configurer l'environnement : %m"
 
-#: libpq/auth.c:1122
+#: libpq/auth.c:1130
 #, c-format
 msgid "expected GSS response, got message type %d"
 msgstr "en attente d'une réponse GSS, a reçu un message de type %d"
 
-#: libpq/auth.c:1182
+#: libpq/auth.c:1190
 msgid "accepting GSS security context failed"
 msgstr "échec de l'acceptation du contexte de sécurité GSS"
 
-#: libpq/auth.c:1223
+#: libpq/auth.c:1231
 msgid "retrieving GSS user name failed"
 msgstr "échec lors de la récupération du nom de l'utilisateur avec GSS"
 
-#: libpq/auth.c:1372
+#: libpq/auth.c:1380
 msgid "could not acquire SSPI credentials"
 msgstr "n'a pas pu obtenir les pièces d'identité SSPI"
 
-#: libpq/auth.c:1397
+#: libpq/auth.c:1405
 #, c-format
 msgid "expected SSPI response, got message type %d"
 msgstr "en attente d'une réponse SSPI, a reçu un message de type %d"
 
-#: libpq/auth.c:1475
+#: libpq/auth.c:1483
 msgid "could not accept SSPI security context"
 msgstr "n'a pas pu accepter le contexte de sécurité SSPI"
 
-#: libpq/auth.c:1537
+#: libpq/auth.c:1545
 msgid "could not get token from SSPI security context"
 msgstr "n'a pas pu obtenir le jeton du contexte de sécurité SSPI"
 
-#: libpq/auth.c:1676 libpq/auth.c:1695
+#: libpq/auth.c:1684 libpq/auth.c:1703
 #, c-format
 msgid "could not translate name"
 msgstr "n'a pas pu traduit le nom"
 
-#: libpq/auth.c:1708
+#: libpq/auth.c:1716
 #, c-format
 msgid "realm name too long"
 msgstr "nom du royaume trop long"
 
-#: libpq/auth.c:1723
+#: libpq/auth.c:1731
 #, c-format
 msgid "translated account name too long"
 msgstr "traduction du nom de compte trop longue"
 
-#: libpq/auth.c:1904
+#: libpq/auth.c:1912
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "n'a pas pu créer le socket pour la connexion Ident : %m"
 
-#: libpq/auth.c:1919
+#: libpq/auth.c:1927
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "n'a pas pu se lier à l'adresse locale « %s » : %m"
 
-#: libpq/auth.c:1931
+#: libpq/auth.c:1939
 #, c-format
 msgid "could not connect to Ident server at address \"%s\", port %s: %m"
 msgstr "n'a pas pu se connecter au serveur Ident à l'adresse « %s », port %s : %m"
 
-#: libpq/auth.c:1953
+#: libpq/auth.c:1961
 #, c-format
 msgid "could not send query to Ident server at address \"%s\", port %s: %m"
 msgstr "n'a pas pu envoyer la requête au serveur Ident à l'adresse « %s », port %s : %m"
 
-#: libpq/auth.c:1970
+#: libpq/auth.c:1978
 #, c-format
 msgid "could not receive response from Ident server at address \"%s\", port %s: %m"
 msgstr ""
 "n'a pas pu recevoir la réponse du serveur Ident à l'adresse « %s », port %s :\n"
 "%m"
 
-#: libpq/auth.c:1980
+#: libpq/auth.c:1988
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "réponse mal formatée du serveur Ident : « %s »"
 
-#: libpq/auth.c:2033
+#: libpq/auth.c:2041
 #, c-format
 msgid "peer authentication is not supported on this platform"
 msgstr "la méthode d'authentification «peer n'est pas supportée sur cette plateforme"
 
-#: libpq/auth.c:2037
+#: libpq/auth.c:2045
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "n'a pas pu obtenir l'authentification de l'autre : %m"
 
-#: libpq/auth.c:2049
+#: libpq/auth.c:2057
 #, c-format
 msgid "could not look up local user ID %ld: %s"
 msgstr "n'a pas pu rechercher l'identifiant %ld de l'utilisateur local : %s"
 
-#: libpq/auth.c:2150
+#: libpq/auth.c:2158
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "erreur provenant de la couche PAM : %s"
 
-#: libpq/auth.c:2161
+#: libpq/auth.c:2169
 #, c-format
 msgid "unsupported PAM conversation %d/\"%s\""
 msgstr "conversation PAM %d/\"%s\" non supportée"
 
-#: libpq/auth.c:2221
+#: libpq/auth.c:2229
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "n'a pas pu créer l'authenticateur PAM : %s"
 
-#: libpq/auth.c:2232
+#: libpq/auth.c:2240
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) a échoué : %s"
 
-#: libpq/auth.c:2264
+#: libpq/auth.c:2272
 #, c-format
 msgid "pam_set_item(PAM_RHOST) failed: %s"
 msgstr "pam_set_item(PAM_RHOST) a échoué : %s"
 
-#: libpq/auth.c:2276
+#: libpq/auth.c:2284
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) a échoué : %s"
 
-#: libpq/auth.c:2289
+#: libpq/auth.c:2297
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate a échoué : %s"
 
-#: libpq/auth.c:2302
+#: libpq/auth.c:2310
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt a échoué : %s"
 
-#: libpq/auth.c:2313
+#: libpq/auth.c:2321
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "n'a pas pu fermer l'authenticateur PAM : %s"
 
-#: libpq/auth.c:2393
+#: libpq/auth.c:2401
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "n'a pas pu initialiser LDAP : code d'erreur %d"
 
-#: libpq/auth.c:2430
+#: libpq/auth.c:2438
 #, c-format
 msgid "could not extract domain name from ldapbasedn"
 msgstr "n'a pas pu extraire le nom de domaine depuis ldapbasedn"
 
-#: libpq/auth.c:2438
+#: libpq/auth.c:2446
 #, c-format
 msgid "LDAP authentication could not find DNS SRV records for \"%s\""
 msgstr "l'authentification LDAP n'a pu trouver les enregistrement DNS SRV pour « %s »"
 
-#: libpq/auth.c:2440
+#: libpq/auth.c:2448
 #, c-format
 msgid "Set an LDAP server name explicitly."
 msgstr "Définit un nom de serveur LDAP explicitement."
 
-#: libpq/auth.c:2492
+#: libpq/auth.c:2500
 #, c-format
 msgid "could not initialize LDAP: %s"
 msgstr "n'a pas pu initialiser LDAP : %s"
 
-#: libpq/auth.c:2502
+#: libpq/auth.c:2510
 #, c-format
 msgid "ldaps not supported with this LDAP library"
 msgstr "ldaps non supporté avec cette bibliothèque LDAP"
 
-#: libpq/auth.c:2510
+#: libpq/auth.c:2518
 #, c-format
 msgid "could not initialize LDAP: %m"
 msgstr "n'a pas pu initialiser LDAP : %m"
 
-#: libpq/auth.c:2520
+#: libpq/auth.c:2528
 #, c-format
 msgid "could not set LDAP protocol version: %s"
 msgstr "n'a pas pu initialiser la version du protocole LDAP : %s"
 
-#: libpq/auth.c:2560
+#: libpq/auth.c:2568
 #, c-format
 msgid "could not load function _ldap_start_tls_sA in wldap32.dll"
 msgstr "n'a pas pu charger la fonction _ldap_start_tls_sA de wldap32.dll"
 
-#: libpq/auth.c:2561
+#: libpq/auth.c:2569
 #, c-format
 msgid "LDAP over SSL is not supported on this platform."
 msgstr "LDAP via SSL n'est pas supporté sur cette plateforme."
 
-#: libpq/auth.c:2577
+#: libpq/auth.c:2585
 #, c-format
 msgid "could not start LDAP TLS session: %s"
 msgstr "n'a pas pu démarrer la session TLS LDAP : %s"
 
-#: libpq/auth.c:2648
+#: libpq/auth.c:2656
 #, c-format
 msgid "LDAP server not specified, and no ldapbasedn"
 msgstr "serveur LDAP non précisé, et il n'y a pas de ldapbasedn"
 
-#: libpq/auth.c:2655
+#: libpq/auth.c:2663
 #, c-format
 msgid "LDAP server not specified"
 msgstr "serveur LDAP non précisé"
 
-#: libpq/auth.c:2717
+#: libpq/auth.c:2725
 #, c-format
 msgid "invalid character in user name for LDAP authentication"
 msgstr "caractère invalide dans le nom de l'utilisateur pour l'authentification LDAP"
 
-#: libpq/auth.c:2734
+#: libpq/auth.c:2742
 #, c-format
 msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s"
 msgstr "n'a pas pu réaliser le lien LDAP initiale pour ldapbinddn « %s » sur le serveur « %s » : %s"
 
-#: libpq/auth.c:2763
+#: libpq/auth.c:2771
 #, c-format
 msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s"
 msgstr "n'a pas pu rechercher dans LDAP pour filtrer « %s » sur le serveur « %s » : %s"
 
-#: libpq/auth.c:2777
+#: libpq/auth.c:2785
 #, c-format
 msgid "LDAP user \"%s\" does not exist"
 msgstr "l'utilisateur LDAP « %s » n'existe pas"
 
-#: libpq/auth.c:2778
+#: libpq/auth.c:2786
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries."
 msgstr "la recherche LDAP pour le filtre « %s » sur le serveur « %s » n'a renvoyé aucun enregistrement."
 
-#: libpq/auth.c:2782
+#: libpq/auth.c:2790
 #, c-format
 msgid "LDAP user \"%s\" is not unique"
 msgstr "l'utilisateur LDAP « %s » n'est pas unique"
 
-#: libpq/auth.c:2783
+#: libpq/auth.c:2791
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned %d entry."
 msgid_plural "LDAP search for filter \"%s\" on server \"%s\" returned %d entries."
 msgstr[0] "la recherche LDAP pour le filtre « %s » sur le serveur « %s » a renvoyé %d enregistrement."
 msgstr[1] "la recherche LDAP pour le filtre « %s » sur le serveur « %s » a renvoyé %d enregistrements."
 
-#: libpq/auth.c:2803
+#: libpq/auth.c:2811
 #, c-format
 msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
 msgstr ""
 "n'a pas pu obtenir le dn pour la première entrée correspondante « %s » sur\n"
 "le serveur « %s » : %s"
 
-#: libpq/auth.c:2824
+#: libpq/auth.c:2832
 #, c-format
 msgid "could not unbind after searching for user \"%s\" on server \"%s\""
 msgstr ""
 "n'a pas pu exécuter le unbind après la recherche de l'utilisateur « %s »\n"
 "sur le serveur « %s »"
 
-#: libpq/auth.c:2855
+#: libpq/auth.c:2863
 #, c-format
 msgid "LDAP login failed for user \"%s\" on server \"%s\": %s"
 msgstr "échec de connexion LDAP pour l'utilisateur « %s » sur le serveur « %s » : %s"
 
-#: libpq/auth.c:2887
+#: libpq/auth.c:2895
 #, c-format
 msgid "LDAP diagnostics: %s"
 msgstr "diagnostique LDAP: %s"
 
-#: libpq/auth.c:2925
+#: libpq/auth.c:2933
 #, c-format
 msgid "certificate authentication failed for user \"%s\": client certificate contains no user name"
 msgstr ""
 "l'authentification par le certificat a échoué pour l'utilisateur « %s » :\n"
 "le certificat du client ne contient aucun nom d'utilisateur"
 
-#: libpq/auth.c:2946
+#: libpq/auth.c:2954
 #, c-format
 msgid "certificate authentication failed for user \"%s\": unable to retrieve subject DN"
 msgstr "authentification par certificat échouée pour l'utilisateur « %s » : incapable de récupérer le DN sujet"
 
-#: libpq/auth.c:2969
+#: libpq/auth.c:2977
 #, c-format
 msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": DN mismatch"
 msgstr "la validation du certificat (clientcert=verify-full) a échoué pour l'utilisateur « %s » : incohérence de DN"
 
-#: libpq/auth.c:2974
+#: libpq/auth.c:2982
 #, c-format
 msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": CN mismatch"
 msgstr "l'authentification par certificat (clientcert=verify-full) a échoué pour l'utilisateur « %s » : incohérence de CN"
 
-#: libpq/auth.c:3076
+#: libpq/auth.c:3084
 #, c-format
 msgid "RADIUS server not specified"
 msgstr "serveur RADIUS non précisé"
 
-#: libpq/auth.c:3083
+#: libpq/auth.c:3091
 #, c-format
 msgid "RADIUS secret not specified"
 msgstr "secret RADIUS non précisé"
 
-#: libpq/auth.c:3097
+#: libpq/auth.c:3105
 #, c-format
 msgid "RADIUS authentication does not support passwords longer than %d characters"
 msgstr "l'authentification RADIUS ne supporte pas les mots de passe de plus de %d caractères"
 
-#: libpq/auth.c:3204 libpq/hba.c:2008
+#: libpq/auth.c:3212 libpq/hba.c:2008
 #, c-format
 msgid "could not translate RADIUS server name \"%s\" to address: %s"
 msgstr "n'a pas pu traduire le nom du serveur RADIUS « %s » en une adresse : %s"
 
-#: libpq/auth.c:3218
+#: libpq/auth.c:3226
 #, c-format
 msgid "could not generate random encryption vector"
 msgstr "n'a pas pu générer le vecteur de chiffrement aléatoire"
 
-#: libpq/auth.c:3252
+#: libpq/auth.c:3260
 #, c-format
 msgid "could not perform MD5 encryption of password"
 msgstr "n'a pas pu réaliser le chiffrement MD5 du mot de passe"
 
-#: libpq/auth.c:3278
+#: libpq/auth.c:3286
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "n'a pas pu créer le socket RADIUS : %m"
 
-#: libpq/auth.c:3300
+#: libpq/auth.c:3308
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "n'a pas pu se lier à la socket RADIUS : %m"
 
-#: libpq/auth.c:3310
+#: libpq/auth.c:3318
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "n'a pas pu transmettre le paquet RADIUS : %m"
 
-#: libpq/auth.c:3343 libpq/auth.c:3369
+#: libpq/auth.c:3351 libpq/auth.c:3377
 #, c-format
 msgid "timeout waiting for RADIUS response from %s"
 msgstr "dépassement du délai pour la réponse du RADIUS à partir de %s"
 
-#: libpq/auth.c:3362
+#: libpq/auth.c:3370
 #, c-format
 msgid "could not check status on RADIUS socket: %m"
 msgstr "n'a pas pu vérifier le statut sur la socket RADIUS : %m"
 
-#: libpq/auth.c:3392
+#: libpq/auth.c:3400
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "n'a pas pu lire la réponse RADIUS : %m"
 
-#: libpq/auth.c:3405 libpq/auth.c:3409
+#: libpq/auth.c:3413 libpq/auth.c:3417
 #, c-format
 msgid "RADIUS response from %s was sent from incorrect port: %d"
 msgstr "la réponse RADIUS de %s a été envoyée à partir d'un mauvais port : %d"
 
-#: libpq/auth.c:3418
+#: libpq/auth.c:3426
 #, c-format
 msgid "RADIUS response from %s too short: %d"
 msgstr "réponse RADIUS de %s trop courte : %d"
 
-#: libpq/auth.c:3425
+#: libpq/auth.c:3433
 #, c-format
 msgid "RADIUS response from %s has corrupt length: %d (actual length %d)"
 msgstr "la réponse RADIUS de %s a une longueur corrompue : %d (longueur réelle %d)"
 
-#: libpq/auth.c:3433
+#: libpq/auth.c:3441
 #, c-format
 msgid "RADIUS response from %s is to a different request: %d (should be %d)"
 msgstr "la réponse RADIUS de %s correspond à une demande différente : %d (devrait être %d)"
 
-#: libpq/auth.c:3458
+#: libpq/auth.c:3466
 #, c-format
 msgid "could not perform MD5 encryption of received packet"
 msgstr "n'a pas pu réaliser le chiffrement MD5 du paquet reçu"
 
-#: libpq/auth.c:3467
+#: libpq/auth.c:3475
 #, c-format
 msgid "RADIUS response from %s has incorrect MD5 signature"
 msgstr "la réponse RADIUS de %s a une signature MD5 invalide"
 
-#: libpq/auth.c:3485
+#: libpq/auth.c:3493
 #, c-format
 msgid "RADIUS response from %s has invalid code (%d) for user \"%s\""
 msgstr "la réponse RADIUS de %s a un code invalide (%d) pour l'utilisateur « %s »"
@@ -15053,7 +15058,7 @@ msgstr "le type de nœud extensible « %s » existe déjà"
 msgid "ExtensibleNodeMethods \"%s\" was not registered"
 msgstr "ExtensibleNodeMethods \"%s\" n'a pas été enregistré"
 
-#: nodes/makefuncs.c:150 nodes/makefuncs.c:176 statistics/extended_stats.c:2346
+#: nodes/makefuncs.c:150 nodes/makefuncs.c:176 statistics/extended_stats.c:2326
 #, c-format
 msgid "relation \"%s\" does not have a composite type"
 msgstr "la relation « %s » n'a pas un type composite"
@@ -15087,46 +15092,46 @@ msgid "%s cannot be applied to the nullable side of an outer join"
 msgstr "%s ne peut être appliqué sur le côté possiblement NULL d'une jointure externe"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/planner.c:1316 parser/analyze.c:1720 parser/analyze.c:1976 parser/analyze.c:3155
+#: optimizer/plan/planner.c:1346 parser/analyze.c:1720 parser/analyze.c:1976 parser/analyze.c:3155
 #, c-format
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "%s n'est pas autorisé avec UNION/INTERSECT/EXCEPT"
 
-#: optimizer/plan/planner.c:1973 optimizer/plan/planner.c:3630
+#: optimizer/plan/planner.c:2003 optimizer/plan/planner.c:3660
 #, c-format
 msgid "could not implement GROUP BY"
 msgstr "n'a pas pu implanter GROUP BY"
 
-#: optimizer/plan/planner.c:1974 optimizer/plan/planner.c:3631 optimizer/plan/planner.c:4388 optimizer/prep/prepunion.c:1045
+#: optimizer/plan/planner.c:2004 optimizer/plan/planner.c:3661 optimizer/plan/planner.c:4418 optimizer/prep/prepunion.c:1045
 #, c-format
 msgid "Some of the datatypes only support hashing, while others only support sorting."
 msgstr ""
 "Certains des types de données supportent seulement le hachage,\n"
 "alors que les autres supportent seulement le tri."
 
-#: optimizer/plan/planner.c:4387
+#: optimizer/plan/planner.c:4417
 #, c-format
 msgid "could not implement DISTINCT"
 msgstr "n'a pas pu implanter DISTINCT"
 
-#: optimizer/plan/planner.c:5235
+#: optimizer/plan/planner.c:5265
 #, c-format
 msgid "could not implement window PARTITION BY"
 msgstr "n'a pas pu implanter PARTITION BY de window"
 
-#: optimizer/plan/planner.c:5236
+#: optimizer/plan/planner.c:5266
 #, c-format
 msgid "Window partitioning columns must be of sortable datatypes."
 msgstr ""
 "Les colonnes de partitionnement de window doivent être d'un type de données\n"
 "triables."
 
-#: optimizer/plan/planner.c:5240
+#: optimizer/plan/planner.c:5270
 #, c-format
 msgid "could not implement window ORDER BY"
 msgstr "n'a pas pu implanter ORDER BY dans le window"
 
-#: optimizer/plan/planner.c:5241
+#: optimizer/plan/planner.c:5271
 #, c-format
 msgid "Window ordering columns must be of sortable datatypes."
 msgstr "Les colonnes de tri de la window doivent être d'un type de données triable."
@@ -15616,113 +15621,113 @@ msgstr "Vous devriez être capable de déplacer la fonction SETOF dans un élém
 msgid "aggregate function calls cannot contain window function calls"
 msgstr "les appels à la fonction d'agrégat ne peuvent pas contenir des appels à une fonction de fenêtrage"
 
-#: parser/parse_agg.c:854
+#: parser/parse_agg.c:880
 msgid "window functions are not allowed in JOIN conditions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les conditions de jointure"
 
-#: parser/parse_agg.c:861
+#: parser/parse_agg.c:887
 msgid "window functions are not allowed in functions in FROM"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les fonctions contenues dans la clause FROM"
 
-#: parser/parse_agg.c:867
+#: parser/parse_agg.c:893
 msgid "window functions are not allowed in policy expressions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les expressions de politique"
 
-#: parser/parse_agg.c:880
+#: parser/parse_agg.c:906
 msgid "window functions are not allowed in window definitions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les définitions de fenêtres"
 
-#: parser/parse_agg.c:912
+#: parser/parse_agg.c:938
 msgid "window functions are not allowed in check constraints"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les contraintes CHECK"
 
-#: parser/parse_agg.c:916
+#: parser/parse_agg.c:942
 msgid "window functions are not allowed in DEFAULT expressions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les expressions par défaut"
 
-#: parser/parse_agg.c:919
+#: parser/parse_agg.c:945
 msgid "window functions are not allowed in index expressions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les expressions d'index"
 
-#: parser/parse_agg.c:922
+#: parser/parse_agg.c:948
 msgid "window functions are not allowed in statistics expressions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisées dans les expressions statistiques"
 
-#: parser/parse_agg.c:925
+#: parser/parse_agg.c:951
 msgid "window functions are not allowed in index predicates"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les prédicats d'index"
 
-#: parser/parse_agg.c:928
+#: parser/parse_agg.c:954
 msgid "window functions are not allowed in transform expressions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les expressions de transformation"
 
-#: parser/parse_agg.c:931
+#: parser/parse_agg.c:957
 msgid "window functions are not allowed in EXECUTE parameters"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les paramètres d'EXECUTE"
 
-#: parser/parse_agg.c:934
+#: parser/parse_agg.c:960
 msgid "window functions are not allowed in trigger WHEN conditions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les conditions WHEN des triggers"
 
-#: parser/parse_agg.c:937
+#: parser/parse_agg.c:963
 msgid "window functions are not allowed in partition bound"
 msgstr "les fonctions de fenêtrage ne sont pas autorisées dans les limites de partition"
 
-#: parser/parse_agg.c:940
+#: parser/parse_agg.c:966
 msgid "window functions are not allowed in partition key expressions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les expressions de clé de partitionnement"
 
-#: parser/parse_agg.c:943
+#: parser/parse_agg.c:969
 msgid "window functions are not allowed in CALL arguments"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans les arguments de CALL"
 
-#: parser/parse_agg.c:946
+#: parser/parse_agg.c:972
 msgid "window functions are not allowed in COPY FROM WHERE conditions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisées dans les conditions WHERE d'un COPY FROM"
 
-#: parser/parse_agg.c:949
+#: parser/parse_agg.c:975
 msgid "window functions are not allowed in column generation expressions"
 msgstr "les fonctions de fenêtrage ne sont pas autorisées dans les expressions de génération de colonne"
 
 #. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:972 parser/parse_clause.c:1843
+#: parser/parse_agg.c:998 parser/parse_clause.c:1843
 #, c-format
 msgid "window functions are not allowed in %s"
 msgstr "les fonctions de fenêtrage ne sont pas autorisés dans %s"
 
-#: parser/parse_agg.c:1006 parser/parse_clause.c:2677
+#: parser/parse_agg.c:1032 parser/parse_clause.c:2677
 #, c-format
 msgid "window \"%s\" does not exist"
 msgstr "le window « %s » n'existe pas"
 
-#: parser/parse_agg.c:1090
+#: parser/parse_agg.c:1116
 #, c-format
 msgid "too many grouping sets present (maximum 4096)"
 msgstr "trop d'ensembles de regroupement présents (4096 maximum)"
 
-#: parser/parse_agg.c:1230
+#: parser/parse_agg.c:1256
 #, c-format
 msgid "aggregate functions are not allowed in a recursive query's recursive term"
 msgstr "les fonctions d'agrégat ne sont pas autorisées dans le terme récursif d'une requête récursive"
 
-#: parser/parse_agg.c:1423
+#: parser/parse_agg.c:1449
 #, c-format
 msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function"
 msgstr "la colonne « %s.%s » doit apparaître dans la clause GROUP BY ou doit être utilisé dans une fonction d'agrégat"
 
-#: parser/parse_agg.c:1426
+#: parser/parse_agg.c:1452
 #, c-format
 msgid "Direct arguments of an ordered-set aggregate must use only grouped columns."
 msgstr "Les arguments directs d'un agégat par ensemble ordonné doivent seulement utiliser des colonnes groupées."
 
-#: parser/parse_agg.c:1431
+#: parser/parse_agg.c:1457
 #, c-format
 msgid "subquery uses ungrouped column \"%s.%s\" from outer query"
 msgstr ""
 "la sous-requête utilise une colonne « %s.%s » non groupée dans la requête\n"
 "externe"
 
-#: parser/parse_agg.c:1595
+#: parser/parse_agg.c:1621
 #, c-format
 msgid "arguments to GROUPING must be grouping expressions of the associated query level"
 msgstr "les arguments de la clause GROUPING doivent être des expressions de regroupement du niveau associé de la requête"
@@ -17667,7 +17672,7 @@ msgstr "la colonne %d de la clé de partitionnement a pour type %s, mais la vale
 msgid "column %d of the partition key has type \"%s\", but supplied value is of type \"%s\""
 msgstr "la colonne %d de la clé de partitionnement a pour type « %s », mais la valeur fournie a pour type « %s »"
 
-#: port/pg_sema.c:209 port/pg_shmem.c:678 port/posix_sema.c:209 port/sysv_sema.c:327 port/sysv_shmem.c:678
+#: port/pg_sema.c:209 port/pg_shmem.c:678 port/posix_sema.c:209 port/sysv_sema.c:347 port/sysv_shmem.c:678
 #, c-format
 msgid "could not stat data directory \"%s\": %m"
 msgstr "n'a pas pu lire les informations sur le répertoire des données « %s » : %m"
@@ -17747,17 +17752,17 @@ msgstr ""
 msgid "Terminate any old server processes associated with data directory \"%s\"."
 msgstr "Terminez les anciens processus serveurs associés avec le répertoire de données « %s »."
 
-#: port/sysv_sema.c:124
+#: port/sysv_sema.c:139
 #, c-format
 msgid "could not create semaphores: %m"
 msgstr "n'a pas pu créer des sémaphores : %m"
 
-#: port/sysv_sema.c:125
+#: port/sysv_sema.c:140
 #, c-format
 msgid "Failed system call was semget(%lu, %d, 0%o)."
 msgstr "L'appel système qui a échoué était semget(%lu, %d, 0%o)."
 
-#: port/sysv_sema.c:129
+#: port/sysv_sema.c:144
 #, c-format
 msgid ""
 "This error does *not* mean that you have run out of disk space.  It occurs when either the system limit for the maximum number of semaphore sets (SEMMNI), or the system wide maximum number of semaphores (SEMMNS), would be exceeded.  You need to raise the respective kernel parameter.  Alternatively, reduce PostgreSQL's consumption of semaphores by reducing its max_connections parameter.\n"
@@ -17772,7 +17777,7 @@ msgstr ""
 "La documentation de PostgreSQL contient plus d'informations sur la\n"
 "configuration de votre système avec PostgreSQL."
 
-#: port/sysv_sema.c:159
+#: port/sysv_sema.c:174
 #, c-format
 msgid "You possibly need to raise your kernel's SEMVMX value to be at least %d.  Look into the PostgreSQL documentation for details."
 msgstr ""
@@ -17997,7 +18002,7 @@ msgstr[1] "Un maximum de %d processus en tâche de fond peuvent être enregistr
 msgid "Consider increasing the configuration parameter \"max_worker_processes\"."
 msgstr "Considérez l'augmentation du paramètre « max_worker_processes »."
 
-#: postmaster/checkpointer.c:428
+#: postmaster/checkpointer.c:431
 #, c-format
 msgid "checkpoints are occurring too frequently (%d second apart)"
 msgid_plural "checkpoints are occurring too frequently (%d seconds apart)"
@@ -18008,17 +18013,17 @@ msgstr[1] ""
 "les points de vérification (checkpoints) arrivent trop fréquemment\n"
 "(toutes les %d secondes)"
 
-#: postmaster/checkpointer.c:432
+#: postmaster/checkpointer.c:435
 #, c-format
 msgid "Consider increasing the configuration parameter \"max_wal_size\"."
 msgstr "Considérez l'augmentation du paramètre « max_wal_size »."
 
-#: postmaster/checkpointer.c:1062
+#: postmaster/checkpointer.c:1068
 #, c-format
 msgid "checkpoint request failed"
 msgstr "échec de la demande de point de vérification"
 
-#: postmaster/checkpointer.c:1063
+#: postmaster/checkpointer.c:1069
 #, c-format
 msgid "Consult recent messages in the server log for details."
 msgstr ""
@@ -19524,32 +19529,32 @@ msgstr "n'a pas pu analyser le mode du fichier « %s »"
 msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished"
 msgstr "le worker de synchronisation de table en réplication logique pour la souscription « %s », table « %s », a terminé"
 
-#: replication/logical/tablesync.c:737 replication/logical/tablesync.c:780
+#: replication/logical/tablesync.c:758 replication/logical/tablesync.c:801
 #, c-format
 msgid "could not fetch table info for table \"%s.%s\" from publisher: %s"
 msgstr "n'a pas pu récupérer l'information sur la table « %s.%s » à partir du publieur : %s"
 
-#: replication/logical/tablesync.c:744
+#: replication/logical/tablesync.c:765
 #, c-format
 msgid "table \"%s.%s\" not found on publisher"
 msgstr "table « %s.%s » non trouvée sur le publieur"
 
-#: replication/logical/tablesync.c:868
+#: replication/logical/tablesync.c:889
 #, c-format
 msgid "could not start initial contents copy for table \"%s.%s\": %s"
 msgstr "n'a pas pu lancer la copie initiale du contenu de la table « %s.%s » : %s"
 
-#: replication/logical/tablesync.c:1069
+#: replication/logical/tablesync.c:1090
 #, c-format
 msgid "table copy could not start transaction on publisher: %s"
 msgstr "la copie de table n'a pas pu démarrer la transaction sur le publieur : %s"
 
-#: replication/logical/tablesync.c:1110
+#: replication/logical/tablesync.c:1131
 #, c-format
 msgid "replication origin \"%s\" already exists"
 msgstr "l'origine de réplication « %s » existe déjà"
 
-#: replication/logical/tablesync.c:1123
+#: replication/logical/tablesync.c:1144
 #, c-format
 msgid "table copy could not finish transaction on publisher: %s"
 msgstr "la copie de table n'a pas pu finir la transaction sur le publieur : %s"
@@ -19609,27 +19614,27 @@ msgstr "le processus apply de réplication logique pour la souscription « %s »
 msgid "could not read from streaming transaction's subxact file \"%s\": read only %zu of %zu bytes"
 msgstr "n'a pas pu lire à partir du fichier subxact de transaction en flux « %s » : a lu seulement %zu octets sur %zu"
 
-#: replication/logical/worker.c:3136
+#: replication/logical/worker.c:3143
 #, c-format
 msgid "logical replication apply worker for subscription %u will not start because the subscription was removed during startup"
 msgstr "le processus apply de réplication logique pour la souscription %u ne démarrera pas car la souscription a été désactivée au démarrage"
 
-#: replication/logical/worker.c:3148
+#: replication/logical/worker.c:3155
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" will not start because the subscription was disabled during startup"
 msgstr "le processus apply de réplication logique pour la souscription « %s » ne démarrera pas car la souscription a été désactivée au démarrage"
 
-#: replication/logical/worker.c:3166
+#: replication/logical/worker.c:3173
 #, c-format
 msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has started"
 msgstr "le processus de synchronisation des tables en réplication logique pour la souscription « %s », table « %s » a démarré"
 
-#: replication/logical/worker.c:3170
+#: replication/logical/worker.c:3177
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" has started"
 msgstr "le processus apply de réplication logique pour la souscription « %s » a démarré"
 
-#: replication/logical/worker.c:3208
+#: replication/logical/worker.c:3215
 #, c-format
 msgid "subscription has no replication slot set"
 msgstr "la souscription n'a aucun ensemble de slot de réplication"
@@ -21838,6 +21843,11 @@ msgstr "ne peut pas exécuter %s dans un processus en tâche de fond"
 msgid "must be superuser to do CHECKPOINT"
 msgstr "doit être super-utilisateur pour exécuter un point de vérification (CHECKPOINT)"
 
+#: tcop/utility.c:1866
+#, c-format
+msgid "CREATE STATISTICS only supports relation names in the FROM clause"
+msgstr "CREATE STATISTICS accepte seulement les noms de relation dans la clause FROM"
+
 #: tsearch/dict_ispell.c:52 tsearch/dict_thesaurus.c:615
 #, c-format
 msgid "multiple DictFile parameters"
@@ -22556,7 +22566,7 @@ msgstr "la précision de TIME(%d)%s a été réduite au maximum autorisée, %d"
 msgid "date out of range: \"%s\""
 msgstr "date en dehors des limites : « %s »"
 
-#: utils/adt/date.c:214 utils/adt/date.c:525 utils/adt/date.c:549 utils/adt/xml.c:2259
+#: utils/adt/date.c:214 utils/adt/date.c:525 utils/adt/date.c:549 utils/adt/xml.c:2253
 #, c-format
 msgid "date out of range"
 msgstr "date en dehors des limites"
@@ -22593,7 +22603,7 @@ msgstr "unités de date « %s » non reconnues"
 
 #: utils/adt/date.c:1318 utils/adt/date.c:1364 utils/adt/date.c:1920 utils/adt/date.c:1951 utils/adt/date.c:1980 utils/adt/date.c:2844 utils/adt/datetime.c:405 utils/adt/datetime.c:1700 utils/adt/formatting.c:4109 utils/adt/formatting.c:4141 utils/adt/formatting.c:4221 utils/adt/formatting.c:4343 utils/adt/json.c:418 utils/adt/json.c:457 utils/adt/timestamp.c:224 utils/adt/timestamp.c:256 utils/adt/timestamp.c:698 utils/adt/timestamp.c:707 utils/adt/timestamp.c:785 utils/adt/timestamp.c:818 utils/adt/timestamp.c:2860 utils/adt/timestamp.c:2865 utils/adt/timestamp.c:2884 utils/adt/timestamp.c:2897 utils/adt/timestamp.c:2908 utils/adt/timestamp.c:2914 utils/adt/timestamp.c:2920
 #: utils/adt/timestamp.c:2925 utils/adt/timestamp.c:2980 utils/adt/timestamp.c:2985 utils/adt/timestamp.c:3006 utils/adt/timestamp.c:3019 utils/adt/timestamp.c:3033 utils/adt/timestamp.c:3041 utils/adt/timestamp.c:3047 utils/adt/timestamp.c:3052 utils/adt/timestamp.c:3739 utils/adt/timestamp.c:3864 utils/adt/timestamp.c:3935 utils/adt/timestamp.c:3971 utils/adt/timestamp.c:4061 utils/adt/timestamp.c:4135 utils/adt/timestamp.c:4171 utils/adt/timestamp.c:4274 utils/adt/timestamp.c:4776 utils/adt/timestamp.c:5050 utils/adt/timestamp.c:5509 utils/adt/timestamp.c:5523 utils/adt/timestamp.c:5528 utils/adt/timestamp.c:5542 utils/adt/timestamp.c:5575 utils/adt/timestamp.c:5662
-#: utils/adt/timestamp.c:5703 utils/adt/timestamp.c:5707 utils/adt/timestamp.c:5776 utils/adt/timestamp.c:5780 utils/adt/timestamp.c:5794 utils/adt/timestamp.c:5828 utils/adt/xml.c:2281 utils/adt/xml.c:2288 utils/adt/xml.c:2308 utils/adt/xml.c:2315
+#: utils/adt/timestamp.c:5703 utils/adt/timestamp.c:5707 utils/adt/timestamp.c:5776 utils/adt/timestamp.c:5780 utils/adt/timestamp.c:5794 utils/adt/timestamp.c:5828 utils/adt/xml.c:2275 utils/adt/xml.c:2282 utils/adt/xml.c:2302 utils/adt/xml.c:2309
 #, c-format
 msgid "timestamp out of range"
 msgstr "timestamp en dehors des limites"
@@ -23760,12 +23770,12 @@ msgstr "les collationnements non déterministes ne sont pas supportés pour ILIK
 msgid "LIKE pattern must not end with escape character"
 msgstr "le motif LIKE ne doit pas se terminer avec un caractère d'échappement"
 
-#: utils/adt/like_match.c:293 utils/adt/regexp.c:703
+#: utils/adt/like_match.c:293 utils/adt/regexp.c:701
 #, c-format
 msgid "invalid escape string"
 msgstr "chaîne d'échappement invalide"
 
-#: utils/adt/like_match.c:294 utils/adt/regexp.c:704
+#: utils/adt/like_match.c:294 utils/adt/regexp.c:702
 #, c-format
 msgid "Escape string must be empty or one character."
 msgstr "La chaîne d'échappement doit être vide ou ne contenir qu'un caractère."
@@ -24322,7 +24332,7 @@ msgstr "Trop de virgules."
 msgid "Junk after right parenthesis or bracket."
 msgstr "Problème après la parenthèse droite ou le crochet droit."
 
-#: utils/adt/regexp.c:289 utils/adt/regexp.c:1569 utils/adt/varlena.c:4549
+#: utils/adt/regexp.c:289 utils/adt/regexp.c:1612 utils/adt/varlena.c:4549
 #, c-format
 msgid "regular expression failed: %s"
 msgstr "l'expression rationnelle a échoué : %s"
@@ -24332,23 +24342,23 @@ msgstr "l'expression rationnelle a échoué : %s"
 msgid "invalid regular expression option: \"%.*s\""
 msgstr "option d'expression rationnelle invalide : « %.*s »"
 
-#: utils/adt/regexp.c:839
+#: utils/adt/regexp.c:848
 #, c-format
 msgid "SQL regular expression may not contain more than two escape-double-quote separators"
 msgstr "une expression régulière SQL ne peut contenir plus de deux guillemets doubles comme séparateur d'échappement"
 
 #. translator: %s is a SQL function name
-#: utils/adt/regexp.c:1007 utils/adt/regexp.c:1389 utils/adt/regexp.c:1444
+#: utils/adt/regexp.c:1050 utils/adt/regexp.c:1432 utils/adt/regexp.c:1487
 #, c-format
 msgid "%s does not support the \"global\" option"
 msgstr "%s ne supporte pas l'option « global »"
 
-#: utils/adt/regexp.c:1009
+#: utils/adt/regexp.c:1052
 #, c-format
 msgid "Use the regexp_matches function instead."
 msgstr "Utilisez la fonction regexp_matches à la place."
 
-#: utils/adt/regexp.c:1191
+#: utils/adt/regexp.c:1234
 #, c-format
 msgid "too many regular expression matches"
 msgstr "trop de correspondances pour l'expression rationnelle"
@@ -25127,98 +25137,98 @@ msgstr ""
 "n'est pas compatible avec les fichiers d'en-tête de libxml2 avec lesquels\n"
 "PostgreSQL a été construit."
 
-#: utils/adt/xml.c:1985
+#: utils/adt/xml.c:1979
 msgid "Invalid character value."
 msgstr "Valeur invalide pour le caractère."
 
-#: utils/adt/xml.c:1988
+#: utils/adt/xml.c:1982
 msgid "Space required."
 msgstr "Espace requis."
 
-#: utils/adt/xml.c:1991
+#: utils/adt/xml.c:1985
 msgid "standalone accepts only 'yes' or 'no'."
 msgstr "la version autonome accepte seulement 'yes' et 'no'."
 
-#: utils/adt/xml.c:1994
+#: utils/adt/xml.c:1988
 msgid "Malformed declaration: missing version."
 msgstr "Déclaration mal formée : version manquante."
 
-#: utils/adt/xml.c:1997
+#: utils/adt/xml.c:1991
 msgid "Missing encoding in text declaration."
 msgstr "Encodage manquant dans la déclaration du texte."
 
-#: utils/adt/xml.c:2000
+#: utils/adt/xml.c:1994
 msgid "Parsing XML declaration: '?>' expected."
 msgstr "Analyse de la déclaration XML : « ?> » attendu."
 
-#: utils/adt/xml.c:2003
+#: utils/adt/xml.c:1997
 #, c-format
 msgid "Unrecognized libxml error code: %d."
 msgstr "Code d'erreur libxml non reconnu : %d."
 
-#: utils/adt/xml.c:2260
+#: utils/adt/xml.c:2254
 #, c-format
 msgid "XML does not support infinite date values."
 msgstr "XML ne supporte pas les valeurs infinies de date."
 
-#: utils/adt/xml.c:2282 utils/adt/xml.c:2309
+#: utils/adt/xml.c:2276 utils/adt/xml.c:2303
 #, c-format
 msgid "XML does not support infinite timestamp values."
 msgstr "XML ne supporte pas les valeurs infinies de timestamp."
 
-#: utils/adt/xml.c:2725
+#: utils/adt/xml.c:2719
 #, c-format
 msgid "invalid query"
 msgstr "requête invalide"
 
-#: utils/adt/xml.c:2817
+#: utils/adt/xml.c:2811
 #, c-format
 msgid "portal \"%s\" does not return tuples"
 msgstr "le portail « %s » ne renvoie pas de lignes"
 
-#: utils/adt/xml.c:4069
+#: utils/adt/xml.c:4063
 #, c-format
 msgid "invalid array for XML namespace mapping"
 msgstr "tableau invalide pour la correspondance de l'espace de nom XML"
 
-#: utils/adt/xml.c:4070
+#: utils/adt/xml.c:4064
 #, c-format
 msgid "The array must be two-dimensional with length of the second axis equal to 2."
 msgstr ""
 "Le tableau doit avoir deux dimensions avec une longueur de 2 pour le\n"
 "deuxième axe."
 
-#: utils/adt/xml.c:4094
+#: utils/adt/xml.c:4088
 #, c-format
 msgid "empty XPath expression"
 msgstr "expression XPath vide"
 
-#: utils/adt/xml.c:4146
+#: utils/adt/xml.c:4140
 #, c-format
 msgid "neither namespace name nor URI may be null"
 msgstr "ni le nom de l'espace de noms ni l'URI ne peuvent être NULL"
 
-#: utils/adt/xml.c:4153
+#: utils/adt/xml.c:4147
 #, c-format
 msgid "could not register XML namespace with name \"%s\" and URI \"%s\""
 msgstr "n'a pas pu enregistrer l'espace de noms XML de nom « %s » et d'URI « %s »"
 
-#: utils/adt/xml.c:4510
+#: utils/adt/xml.c:4504
 #, c-format
 msgid "DEFAULT namespace is not supported"
 msgstr "l'espace de nom DEFAULT n'est pas supporté"
 
-#: utils/adt/xml.c:4539
+#: utils/adt/xml.c:4533
 #, c-format
 msgid "row path filter must not be empty string"
 msgstr "le filtre du chemin de ligne ne doit pas être une chaîne vide"
 
-#: utils/adt/xml.c:4573
+#: utils/adt/xml.c:4567
 #, c-format
 msgid "column path filter must not be empty string"
 msgstr "le filtre du chemin de colonne ne doit pas être une chaîne vide"
 
-#: utils/adt/xml.c:4720
+#: utils/adt/xml.c:4714
 #, c-format
 msgid "more than one value returned by column XPath expression"
 msgstr "plus d'une valeur renvoyée par l'expression XPath de colonne"
index 13c3dd4ff70c974e545dc81fffd19219043cdbd9..9a4cfbfce2802e59bcb70b5b62b471794e3986b9 100644 (file)
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 14\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2024-11-11 02:35+0000\n"
-"PO-Revision-Date: 2024-11-11 09:57+0100\n"
+"POT-Creation-Date: 2025-09-19 19:49+0000\n"
+"PO-Revision-Date: 2025-09-20 11:06+0200\n"
 "Last-Translator: Guillaume Lelarge <guillaume@lelarge.info>\n"
 "Language-Team: French <guillaume@lelarge.info>\n"
 "Language: fr\n"
@@ -18,7 +18,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Poedit 3.5\n"
+"X-Generator: Poedit 3.7\n"
 
 #: ../../../src/common/logging.c:259
 #, c-format
@@ -71,7 +71,7 @@ msgid "%s() failed: %m"
 msgstr "échec de %s() : %m"
 
 #: ../../common/exec.c:560 ../../common/exec.c:605 ../../common/exec.c:697
-#: command.c:1316 command.c:3248 command.c:3297 command.c:3414 input.c:227
+#: command.c:1338 command.c:3339 command.c:3388 command.c:3505 input.c:227
 #: mainloop.c:81 mainloop.c:402
 #, c-format
 msgid "out of memory"
@@ -93,7 +93,7 @@ msgstr "ne peut pas dupliquer un pointeur nul (erreur interne)\n"
 msgid "could not look up effective user ID %ld: %s"
 msgstr "n'a pas pu trouver l'identifiant réel %ld de l'utilisateur : %s"
 
-#: ../../common/username.c:45 command.c:564
+#: ../../common/username.c:45 command.c:585
 msgid "user does not exist"
 msgstr "l'utilisateur n'existe pas"
 
@@ -176,91 +176,96 @@ msgstr "format de sortie invalide (erreur interne) : %d"
 msgid "skipping recursive expansion of variable \"%s\""
 msgstr "ignore l'expansion récursive de la variable « %s »"
 
-#: command.c:229
+#: command.c:238
+#, c-format
+msgid "backslash commands are restricted; only \\unrestrict is allowed"
+msgstr "les commandes antislashs sont restreintes ; seule \\unrestrict est autorisée"
+
+#: command.c:246
 #, c-format
 msgid "invalid command \\%s"
 msgstr "commande \\%s invalide"
 
-#: command.c:231
+#: command.c:248
 #, c-format
 msgid "Try \\? for help."
 msgstr "Essayez \\? pour l'aide."
 
-#: command.c:249
+#: command.c:266
 #, c-format
 msgid "\\%s: extra argument \"%s\" ignored"
 msgstr "\\%s : argument « %s » supplémentaire ignoré"
 
-#: command.c:301
+#: command.c:318
 #, c-format
 msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block"
 msgstr "commande \\%s ignorée ; utilisez \\endif ou Ctrl-C pour quitter le bloc \\if courant"
 
-#: command.c:562
+#: command.c:583
 #, c-format
 msgid "could not get home directory for user ID %ld: %s"
 msgstr "n'a pas pu obtenir le répertoire principal pour l'identifiant d'utilisateur %ld : %s"
 
-#: command.c:580
+#: command.c:601
 #, c-format
 msgid "\\%s: could not change directory to \"%s\": %m"
 msgstr "\\%s : n'a pas pu accéder au répertoire « %s » : %m"
 
-#: command.c:605
+#: command.c:626
 #, c-format
 msgid "You are currently not connected to a database.\n"
 msgstr "Vous n'êtes pas connecté à une base de données.\n"
 
-#: command.c:615
+#: command.c:636
 #, c-format
 msgid "You are connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n"
 msgstr "Vous êtes connecté à la base de données « %s » en tant qu'utilisateur « %s » à l'adresse « %s » via le port « %s ».\n"
 
-#: command.c:618
+#: command.c:639
 #, c-format
 msgid "You are connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n"
 msgstr "Vous êtes connecté à la base de données « %s » en tant qu'utilisateur « %s » via le socket dans « %s » via le port « %s ».\n"
 
-#: command.c:624
+#: command.c:645
 #, c-format
 msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" (address \"%s\") at port \"%s\".\n"
 msgstr "Vous êtes connecté à la base de données « %s » en tant qu'utilisateur « %s » sur l'hôte « %s » (adresse « %s ») via le port « %s ».\n"
 
-#: command.c:627
+#: command.c:648
 #, c-format
 msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n"
 msgstr "Vous êtes connecté à la base de données « %s » en tant qu'utilisateur « %s » sur l'hôte « %s » via le port « %s ».\n"
 
-#: command.c:1011 command.c:1120 command.c:2604
+#: command.c:1032 command.c:1141 command.c:2695
 #, c-format
 msgid "no query buffer"
 msgstr "aucun tampon de requête"
 
-#: command.c:1044 command.c:5314
+#: command.c:1065 command.c:5407
 #, c-format
 msgid "invalid line number: %s"
 msgstr "numéro de ligne invalide : %s"
 
-#: command.c:1111
+#: command.c:1132
 #, c-format
 msgid "The server (version %s) does not support editing function source."
 msgstr "Le serveur (version %s) ne supporte pas l'édition du code de la fonction."
 
-#: command.c:1114
+#: command.c:1135
 #, c-format
 msgid "The server (version %s) does not support editing view definitions."
 msgstr "Le serveur (version %s) ne supporte pas l'édition des définitions de vue."
 
-#: command.c:1198
+#: command.c:1219
 msgid "No changes"
 msgstr "Aucun changement"
 
-#: command.c:1277
+#: command.c:1298
 #, c-format
 msgid "%s: invalid encoding name or conversion procedure not found"
 msgstr "%s : nom d'encodage invalide ou procédure de conversion introuvable"
 
-#: command.c:1312 command.c:2064 command.c:3244 command.c:3436 command.c:5420
+#: command.c:1334 command.c:2086 command.c:3335 command.c:3527 command.c:5513
 #: common.c:174 common.c:223 common.c:392 common.c:1248 common.c:1276
 #: common.c:1385 common.c:1492 common.c:1530 copy.c:488 copy.c:710 help.c:62
 #: large_obj.c:157 large_obj.c:192 large_obj.c:254 startup.c:298
@@ -268,179 +273,189 @@ msgstr "%s : nom d'encodage invalide ou procédure de conversion introuvable"
 msgid "%s"
 msgstr "%s"
 
-#: command.c:1319
+#: command.c:1341
 msgid "There is no previous error."
 msgstr "Il n'y a pas d'erreur précédente."
 
-#: command.c:1432
+#: command.c:1454
 #, c-format
 msgid "\\%s: missing right parenthesis"
 msgstr "\\%s: parenthèse droite manquante"
 
-#: command.c:1609 command.c:1914 command.c:1928 command.c:1945 command.c:2115
-#: command.c:2351 command.c:2571 command.c:2611
+#: command.c:1631 command.c:1936 command.c:1950 command.c:1967 command.c:2137
+#: command.c:2291 command.c:2402 command.c:2620 command.c:2662 command.c:2702
 #, c-format
 msgid "\\%s: missing required argument"
 msgstr "\\%s : argument requis manquant"
 
-#: command.c:1740
+#: command.c:1762
 #, c-format
 msgid "\\elif: cannot occur after \\else"
 msgstr "\\elif : ne peut pas survenir après \\else"
 
-#: command.c:1745
+#: command.c:1767
 #, c-format
 msgid "\\elif: no matching \\if"
 msgstr "\\elif : pas de \\if correspondant"
 
-#: command.c:1809
+#: command.c:1831
 #, c-format
 msgid "\\else: cannot occur after \\else"
 msgstr "\\else : ne peut pas survenir après \\else"
 
-#: command.c:1814
+#: command.c:1836
 #, c-format
 msgid "\\else: no matching \\if"
 msgstr "\\else : pas de \\if correspondant"
 
-#: command.c:1854
+#: command.c:1876
 #, c-format
 msgid "\\endif: no matching \\if"
 msgstr "\\endif : pas de \\if correspondant"
 
-#: command.c:2009
+#: command.c:2031
 msgid "Query buffer is empty."
 msgstr "Le tampon de requête est vide."
 
-#: command.c:2046
+#: command.c:2068
 #, c-format
 msgid "Enter new password for user \"%s\": "
 msgstr "Saisir le nouveau mot de passe de l'utilisateur « %s » : "
 
-#: command.c:2049
+#: command.c:2071
 msgid "Enter it again: "
 msgstr "Saisir le mot de passe à nouveau : "
 
-#: command.c:2053
+#: command.c:2075
 #, c-format
 msgid "Passwords didn't match."
 msgstr "Les mots de passe ne sont pas identiques."
 
-#: command.c:2144
+#: command.c:2166
 #, c-format
 msgid "\\%s: could not read value for variable"
 msgstr "\\%s : n'a pas pu lire la valeur pour la variable"
 
-#: command.c:2247
+#: command.c:2269
 msgid "Query buffer reset (cleared)."
 msgstr "Le tampon de requête a été effacé."
 
-#: command.c:2269
+#: command.c:2320
 #, c-format
 msgid "Wrote history to file \"%s\".\n"
 msgstr "Historique sauvegardé dans le fichier « %s ».\n"
 
-#: command.c:2356
+#: command.c:2407
 #, c-format
 msgid "\\%s: environment variable name must not contain \"=\""
 msgstr "\\%s : le nom de la variable d'environnement ne doit pas contenir « = »"
 
-#: command.c:2408
+#: command.c:2459
 #, c-format
 msgid "The server (version %s) does not support showing function source."
 msgstr "Le serveur (version %s) ne supporte pas l'affichage du code de la fonction."
 
-#: command.c:2411
+#: command.c:2462
 #, c-format
 msgid "The server (version %s) does not support showing view definitions."
 msgstr "Le serveur (version %s) ne supporte pas l'affichage des définitions de vues."
 
-#: command.c:2418
+#: command.c:2469
 #, c-format
 msgid "function name is required"
 msgstr "le nom de la fonction est requis"
 
-#: command.c:2420
+#: command.c:2471
 #, c-format
 msgid "view name is required"
 msgstr "le nom de la vue est requis"
 
-#: command.c:2543
+#: command.c:2594
 msgid "Timing is on."
 msgstr "Chronométrage activé."
 
-#: command.c:2545
+#: command.c:2596
 msgid "Timing is off."
 msgstr "Chronométrage désactivé."
 
-#: command.c:2630 command.c:2658 command.c:3875 command.c:3878 command.c:3881
-#: command.c:3887 command.c:3889 command.c:3915 command.c:3925 command.c:3937
-#: command.c:3951 command.c:3978 command.c:4036 common.c:70 copy.c:331
+#: command.c:2626
+#, c-format
+msgid "\\%s: not currently in restricted mode"
+msgstr "\\%s : n'est pas actuellement en mode restreint"
+
+#: command.c:2636
+#, c-format
+msgid "\\%s: wrong key"
+msgstr "\\%s : mauvaise clé"
+
+#: command.c:2721 command.c:2749 command.c:3968 command.c:3971 command.c:3974
+#: command.c:3980 command.c:3982 command.c:4008 command.c:4018 command.c:4030
+#: command.c:4044 command.c:4071 command.c:4129 common.c:70 copy.c:331
 #: copy.c:403 psqlscanslash.l:784 psqlscanslash.l:795 psqlscanslash.l:805
 #, c-format
 msgid "%s: %m"
 msgstr "%s : %m"
 
-#: command.c:3049 startup.c:237 startup.c:287
+#: command.c:3140 startup.c:237 startup.c:287
 msgid "Password: "
 msgstr "Mot de passe : "
 
-#: command.c:3054 startup.c:284
+#: command.c:3145 startup.c:284
 #, c-format
 msgid "Password for user %s: "
 msgstr "Mot de passe pour l'utilisateur %s : "
 
-#: command.c:3106
+#: command.c:3197
 #, c-format
 msgid "Do not give user, host, or port separately when using a connection string"
 msgstr "Ne pas donner utilisateur, hôte ou port lors de l'utilisation d'une chaîne de connexion"
 
-#: command.c:3141
+#: command.c:3232
 #, c-format
 msgid "No database connection exists to re-use parameters from"
 msgstr "Aucune connexion de base existante pour réutiliser ses paramètres"
 
-#: command.c:3442
+#: command.c:3533
 #, c-format
 msgid "Previous connection kept"
 msgstr "Connexion précédente conservée"
 
-#: command.c:3448
+#: command.c:3539
 #, c-format
 msgid "\\connect: %s"
 msgstr "\\connect : %s"
 
-#: command.c:3504
+#: command.c:3595
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n"
 msgstr "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s » à l'adresse « %s » via le port « %s ».\n"
 
-#: command.c:3507
+#: command.c:3598
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n"
 msgstr "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s » via le socket dans « %s » via le port « %s ».\n"
 
-#: command.c:3513
+#: command.c:3604
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" (address \"%s\") at port \"%s\".\n"
 msgstr "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s » sur l'hôte « %s » (adresse « %s » ) via le port « %s ».\n"
 
-#: command.c:3516
+#: command.c:3607
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n"
 msgstr "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s » sur l'hôte « %s » via le port « %s ».\n"
 
-#: command.c:3521
+#: command.c:3612
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\".\n"
 msgstr "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s ».\n"
 
-#: command.c:3561
+#: command.c:3652
 #, c-format
 msgid "%s (%s, server %s)\n"
 msgstr "%s (%s, serveur %s)\n"
 
-#: command.c:3569
+#: command.c:3660
 #, c-format
 msgid ""
 "WARNING: %s major version %s, server major version %s.\n"
@@ -449,29 +464,29 @@ msgstr ""
 "ATTENTION : %s version majeure %s, version majeure du serveur %s.\n"
 "         Certaines fonctionnalités de psql pourraient ne pas fonctionner.\n"
 
-#: command.c:3608
+#: command.c:3699
 #, c-format
 msgid "SSL connection (protocol: %s, cipher: %s, bits: %s, compression: %s)\n"
 msgstr "Connexion SSL (protocole : %s, chiffrement : %s, bits : %s, compression : %s)\n"
 
-#: command.c:3609 command.c:3610 command.c:3611
+#: command.c:3700 command.c:3701 command.c:3702
 msgid "unknown"
 msgstr "inconnu"
 
-#: command.c:3612 help.c:45
+#: command.c:3703 help.c:45
 msgid "off"
 msgstr "désactivé"
 
-#: command.c:3612 help.c:45
+#: command.c:3703 help.c:45
 msgid "on"
 msgstr "activé"
 
-#: command.c:3626
+#: command.c:3717
 #, c-format
 msgid "GSSAPI-encrypted connection\n"
 msgstr "connexion chiffrée avec GSSAPI\n"
 
-#: command.c:3646
+#: command.c:3737
 #, c-format
 msgid ""
 "WARNING: Console code page (%u) differs from Windows code page (%u)\n"
@@ -483,259 +498,259 @@ msgstr ""
 "            Voir la section « Notes aux utilisateurs de Windows » de la page\n"
 "            référence de psql pour les détails.\n"
 
-#: command.c:3751
+#: command.c:3844
 #, c-format
 msgid "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a line number"
 msgstr "la variable d'environnement PSQL_EDITOR_LINENUMBER_ARG doit être définie avec un numéro de ligne"
 
-#: command.c:3780
+#: command.c:3873
 #, c-format
 msgid "could not start editor \"%s\""
 msgstr "n'a pas pu exécuter l'éditeur « %s »"
 
-#: command.c:3782
+#: command.c:3875
 #, c-format
 msgid "could not start /bin/sh"
 msgstr "n'a pas pu exécuter /bin/sh"
 
-#: command.c:3832
+#: command.c:3925
 #, c-format
 msgid "could not locate temporary directory: %s"
 msgstr "n'a pas pu localiser le répertoire temporaire : %s"
 
-#: command.c:3859
+#: command.c:3952
 #, c-format
 msgid "could not open temporary file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier temporaire « %s » : %m"
 
-#: command.c:4195
+#: command.c:4288
 #, c-format
 msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\""
 msgstr "\\pset: abréviation ambiguë : « %s » correspond à « %s » comme à « %s »"
 
-#: command.c:4215
+#: command.c:4308
 #, c-format
 msgid "\\pset: allowed formats are aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped"
 msgstr "\\pset : les formats autorisés sont aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped"
 
-#: command.c:4234
+#: command.c:4327
 #, c-format
 msgid "\\pset: allowed line styles are ascii, old-ascii, unicode"
 msgstr "\\pset: les styles de lignes autorisés sont ascii, old-ascii, unicode"
 
-#: command.c:4249
+#: command.c:4342
 #, c-format
 msgid "\\pset: allowed Unicode border line styles are single, double"
 msgstr "\\pset : les styles autorisés de ligne de bordure Unicode sont single, double"
 
-#: command.c:4264
+#: command.c:4357
 #, c-format
 msgid "\\pset: allowed Unicode column line styles are single, double"
 msgstr "\\pset : les styles autorisés pour la ligne de colonne Unicode sont single, double"
 
-#: command.c:4279
+#: command.c:4372
 #, c-format
 msgid "\\pset: allowed Unicode header line styles are single, double"
 msgstr "\\pset : les styles autorisés pour la ligne d'en-tête Unicode sont single, double"
 
-#: command.c:4322
+#: command.c:4415
 #, c-format
 msgid "\\pset: csv_fieldsep must be a single one-byte character"
 msgstr "\\pset: csv_fieldsep doit être un unique caractère d'un octet"
 
-#: command.c:4327
+#: command.c:4420
 #, c-format
 msgid "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage return"
 msgstr "\\pset: csv_fieldsep ne peut pas être un guillemet, un retour à la ligne ou un retour chariot"
 
-#: command.c:4464 command.c:4652
+#: command.c:4557 command.c:4745
 #, c-format
 msgid "\\pset: unknown option: %s"
 msgstr "\\pset : option inconnue : %s"
 
-#: command.c:4484
+#: command.c:4577
 #, c-format
 msgid "Border style is %d.\n"
 msgstr "Le style de bordure est %d.\n"
 
-#: command.c:4490
+#: command.c:4583
 #, c-format
 msgid "Target width is unset.\n"
 msgstr "La largeur cible n'est pas configuré.\n"
 
-#: command.c:4492
+#: command.c:4585
 #, c-format
 msgid "Target width is %d.\n"
 msgstr "La largeur cible est %d.\n"
 
-#: command.c:4499
+#: command.c:4592
 #, c-format
 msgid "Expanded display is on.\n"
 msgstr "Affichage étendu activé.\n"
 
-#: command.c:4501
+#: command.c:4594
 #, c-format
 msgid "Expanded display is used automatically.\n"
 msgstr "L'affichage étendu est utilisé automatiquement.\n"
 
-#: command.c:4503
+#: command.c:4596
 #, c-format
 msgid "Expanded display is off.\n"
 msgstr "Affichage étendu désactivé.\n"
 
-#: command.c:4509
+#: command.c:4602
 #, c-format
 msgid "Field separator for CSV is \"%s\".\n"
 msgstr "Le séparateur de champs pour un CSV est « %s ».\n"
 
-#: command.c:4517 command.c:4525
+#: command.c:4610 command.c:4618
 #, c-format
 msgid "Field separator is zero byte.\n"
 msgstr "Le séparateur de champs est l'octet zéro.\n"
 
-#: command.c:4519
+#: command.c:4612
 #, c-format
 msgid "Field separator is \"%s\".\n"
 msgstr "Le séparateur de champs est « %s ».\n"
 
-#: command.c:4532
+#: command.c:4625
 #, c-format
 msgid "Default footer is on.\n"
 msgstr "Le bas de page pas défaut est activé.\n"
 
-#: command.c:4534
+#: command.c:4627
 #, c-format
 msgid "Default footer is off.\n"
 msgstr "Le bas de page par défaut est désactivé.\n"
 
-#: command.c:4540
+#: command.c:4633
 #, c-format
 msgid "Output format is %s.\n"
 msgstr "Le format de sortie est %s.\n"
 
-#: command.c:4546
+#: command.c:4639
 #, c-format
 msgid "Line style is %s.\n"
 msgstr "Le style de ligne est %s.\n"
 
-#: command.c:4553
+#: command.c:4646
 #, c-format
 msgid "Null display is \"%s\".\n"
 msgstr "L'affichage de null est « %s ».\n"
 
-#: command.c:4561
+#: command.c:4654
 #, c-format
 msgid "Locale-adjusted numeric output is on.\n"
 msgstr "L'affichage de la sortie numérique adaptée à la locale est activé.\n"
 
-#: command.c:4563
+#: command.c:4656
 #, c-format
 msgid "Locale-adjusted numeric output is off.\n"
 msgstr "L'affichage de la sortie numérique adaptée à la locale est désactivé.\n"
 
-#: command.c:4570
+#: command.c:4663
 #, c-format
 msgid "Pager is used for long output.\n"
 msgstr "Le paginateur est utilisé pour les affichages longs.\n"
 
-#: command.c:4572
+#: command.c:4665
 #, c-format
 msgid "Pager is always used.\n"
 msgstr "Le paginateur est toujours utilisé.\n"
 
-#: command.c:4574
+#: command.c:4667
 #, c-format
 msgid "Pager usage is off.\n"
 msgstr "L'utilisation du paginateur est désactivé.\n"
 
-#: command.c:4580
+#: command.c:4673
 #, c-format
 msgid "Pager won't be used for less than %d line.\n"
 msgid_plural "Pager won't be used for less than %d lines.\n"
 msgstr[0] "Le paginateur ne sera pas utilisé pour moins que %d ligne.\n"
 msgstr[1] "Le paginateur ne sera pas utilisé pour moins que %d lignes.\n"
 
-#: command.c:4590 command.c:4600
+#: command.c:4683 command.c:4693
 #, c-format
 msgid "Record separator is zero byte.\n"
 msgstr "Le séparateur d'enregistrements est l'octet zéro.\n"
 
-#: command.c:4592
+#: command.c:4685
 #, c-format
 msgid "Record separator is <newline>.\n"
 msgstr "Le séparateur d'enregistrement est <saut de ligne>.\n"
 
-#: command.c:4594
+#: command.c:4687
 #, c-format
 msgid "Record separator is \"%s\".\n"
 msgstr "Le séparateur d'enregistrements est « %s ».\n"
 
-#: command.c:4607
+#: command.c:4700
 #, c-format
 msgid "Table attributes are \"%s\".\n"
 msgstr "Les attributs de la table sont « %s ».\n"
 
-#: command.c:4610
+#: command.c:4703
 #, c-format
 msgid "Table attributes unset.\n"
 msgstr "Les attributs de la table ne sont pas définis.\n"
 
-#: command.c:4617
+#: command.c:4710
 #, c-format
 msgid "Title is \"%s\".\n"
 msgstr "Le titre est « %s ».\n"
 
-#: command.c:4619
+#: command.c:4712
 #, c-format
 msgid "Title is unset.\n"
 msgstr "Le titre n'est pas défini.\n"
 
-#: command.c:4626
+#: command.c:4719
 #, c-format
 msgid "Tuples only is on.\n"
 msgstr "L'affichage des tuples seuls est activé.\n"
 
-#: command.c:4628
+#: command.c:4721
 #, c-format
 msgid "Tuples only is off.\n"
 msgstr "L'affichage des tuples seuls est désactivé.\n"
 
-#: command.c:4634
+#: command.c:4727
 #, c-format
 msgid "Unicode border line style is \"%s\".\n"
 msgstr "Le style de bordure Unicode est « %s ».\n"
 
-#: command.c:4640
+#: command.c:4733
 #, c-format
 msgid "Unicode column line style is \"%s\".\n"
 msgstr "Le style de ligne Unicode est « %s ».\n"
 
-#: command.c:4646
+#: command.c:4739
 #, c-format
 msgid "Unicode header line style is \"%s\".\n"
 msgstr "Le style d'en-tête Unicode est « %s ».\n"
 
-#: command.c:4879
+#: command.c:4972
 #, c-format
 msgid "\\!: failed"
 msgstr "\\! : échec"
 
-#: command.c:4904 common.c:652
+#: command.c:4997 common.c:652
 #, c-format
 msgid "\\watch cannot be used with an empty query"
 msgstr "\\watch ne peut pas être utilisé avec une requête vide"
 
-#: command.c:4945
+#: command.c:5038
 #, c-format
 msgid "%s\t%s (every %gs)\n"
 msgstr "%s\t%s (chaque %gs)\n"
 
-#: command.c:4948
+#: command.c:5041
 #, c-format
 msgid "%s (every %gs)\n"
 msgstr "%s (chaque %gs)\n"
 
-#: command.c:5010 command.c:5017 common.c:552 common.c:559 common.c:1231
+#: command.c:5103 command.c:5110 common.c:552 common.c:559 common.c:1231
 #, c-format
 msgid ""
 "********* QUERY **********\n"
@@ -748,12 +763,12 @@ msgstr ""
 "**************************\n"
 "\n"
 
-#: command.c:5209
+#: command.c:5302
 #, c-format
 msgid "\"%s.%s\" is not a view"
 msgstr "« %s.%s » n'est pas une vue"
 
-#: command.c:5225
+#: command.c:5318
 #, c-format
 msgid "could not parse reloptions array"
 msgstr "n'a pas pu analyser le tableau reloptions"
@@ -2433,7 +2448,7 @@ msgstr ""
 "psql est l'interface interactive de PostgreSQL.\n"
 "\n"
 
-#: help.c:74 help.c:355 help.c:433 help.c:476
+#: help.c:74 help.c:359 help.c:437 help.c:480
 #, c-format
 msgid "Usage:\n"
 msgstr "Usage :\n"
@@ -2817,269 +2832,287 @@ msgstr "  \\q                   quitte psql\n"
 
 #: help.c:182
 #, c-format
+msgid ""
+"  \\restrict RESTRICT_KEY\n"
+"                         enter restricted mode with provided key\n"
+msgstr ""
+"  \\restrict CLE_RESTRICTION\n"
+"                         entre en mode restreint avec la clé fournie\n"
+
+#: help.c:184
+#, c-format
+msgid ""
+"  \\unrestrict RESTRICT_KEY\n"
+"                         exit restricted mode if key matches\n"
+msgstr ""
+"  \\unrestrict CLE_RESTRICTION\n"
+"                         sort du mode restreint si la clé correspond\n"
+
+#: help.c:186
+#, c-format
 msgid "  \\watch [SEC]           execute query every SEC seconds\n"
 msgstr "  \\watch [SEC]           exécute la requête toutes les SEC secondes\n"
 
-#: help.c:185
+#: help.c:189
 #, c-format
 msgid "Help\n"
 msgstr "Aide\n"
 
-#: help.c:187
+#: help.c:191
 #, c-format
 msgid "  \\? [commands]          show help on backslash commands\n"
 msgstr "  \\? [commandes]         affiche l'aide sur les métacommandes\n"
 
-#: help.c:188
+#: help.c:192
 #, c-format
 msgid "  \\? options             show help on psql command-line options\n"
 msgstr "  \\? options             affiche l'aide sur les options en ligne de commande de psql\n"
 
-#: help.c:189
+#: help.c:193
 #, c-format
 msgid "  \\? variables           show help on special variables\n"
 msgstr "  \\? variables           affiche l'aide sur les variables spéciales\n"
 
-#: help.c:190
+#: help.c:194
 #, c-format
 msgid "  \\h [NAME]              help on syntax of SQL commands, * for all commands\n"
 msgstr ""
 "  \\h [NOM]             aide-mémoire pour les commandes SQL, * pour toutes\n"
 "                       les commandes\n"
 
-#: help.c:193
+#: help.c:197
 #, c-format
 msgid "Query Buffer\n"
 msgstr "Tampon de requête\n"
 
-#: help.c:194
+#: help.c:198
 #, c-format
 msgid "  \\e [FILE] [LINE]       edit the query buffer (or file) with external editor\n"
 msgstr ""
 "  \\e [FICHIER] [LIGNE] édite le tampon de requête ou le fichier avec un\n"
 "                        éditeur externe\n"
 
-#: help.c:195
+#: help.c:199
 #, c-format
 msgid "  \\ef [FUNCNAME [LINE]]  edit function definition with external editor\n"
 msgstr ""
 "  \\ef [FONCTION [LIGNE]] édite la définition de fonction avec un éditeur\n"
 "                        externe\n"
 
-#: help.c:196
+#: help.c:200
 #, c-format
 msgid "  \\ev [VIEWNAME [LINE]]  edit view definition with external editor\n"
 msgstr ""
 "  \\ev [VUE [LIGNE]]      édite la définition de vue avec un éditeur\n"
 "                        externe\n"
 
-#: help.c:197
+#: help.c:201
 #, c-format
 msgid "  \\p                     show the contents of the query buffer\n"
 msgstr "  \\p                   affiche le contenu du tampon de requête\n"
 
-#: help.c:198
+#: help.c:202
 #, c-format
 msgid "  \\r                     reset (clear) the query buffer\n"
 msgstr "  \\r                   efface le tampon de requêtes\n"
 
-#: help.c:200
+#: help.c:204
 #, c-format
 msgid "  \\s [FILE]              display history or save it to file\n"
 msgstr ""
 "  \\s [FICHIER]         affiche l'historique ou le sauvegarde dans un\n"
 "                       fichier\n"
 
-#: help.c:202
+#: help.c:206
 #, c-format
 msgid "  \\w FILE                write query buffer to file\n"
 msgstr ""
 "  \\w [FICHIER]         écrit le contenu du tampon de requêtes dans un\n"
 "                       fichier\n"
 
-#: help.c:205
+#: help.c:209
 #, c-format
 msgid "Input/Output\n"
 msgstr "Entrée/Sortie\n"
 
-#: help.c:206
+#: help.c:210
 #, c-format
 msgid "  \\copy ...              perform SQL COPY with data stream to the client host\n"
 msgstr ""
 "  \\copy ...            exécute SQL COPY avec le flux de données dirigé vers\n"
 "                       l'hôte client\n"
 
-#: help.c:207
+#: help.c:211
 #, c-format
 msgid "  \\echo [-n] [STRING]    write string to standard output (-n for no newline)\n"
 msgstr "  \\echo [-n] [TEXTE]     écrit le texte sur la sortie standard (-n pour supprimer le retour à la ligne)\n"
 
-#: help.c:208
+#: help.c:212
 #, c-format
 msgid "  \\i FILE                execute commands from file\n"
 msgstr "  \\i FICHIER           exécute les commandes du fichier\n"
 
-#: help.c:209
+#: help.c:213
 #, c-format
 msgid "  \\ir FILE               as \\i, but relative to location of current script\n"
 msgstr ""
 "  \\ir FICHIER         identique à \\i, mais relatif à l'emplacement du script\n"
 "                       ou un |tube\n"
 
-#: help.c:210
+#: help.c:214
 #, c-format
 msgid "  \\o [FILE]              send all query results to file or |pipe\n"
 msgstr ""
 "  \\o [FICHIER]         envoie les résultats de la requête vers un fichier\n"
 "                       ou un |tube\n"
 
-#: help.c:211
+#: help.c:215
 #, c-format
 msgid "  \\qecho [-n] [STRING]   write string to \\o output stream (-n for no newline)\n"
 msgstr ""
 "  \\qecho [-n] [TEXTE]    écrit un texte sur la sortie des résultats des\n"
 "                       requêtes (\\o) (-n pour supprimer le retour à la ligne)\n"
 
-#: help.c:212
+#: help.c:216
 #, c-format
 msgid "  \\warn [-n] [STRING]    write string to standard error (-n for no newline)\n"
 msgstr "  \\warn [-n] [TEXTE]     écrit le texte sur la sortie des erreurs (-n pour supprimer le retour à la ligne)\n"
 
-#: help.c:215
+#: help.c:219
 #, c-format
 msgid "Conditional\n"
 msgstr "Conditionnel\n"
 
-#: help.c:216
+#: help.c:220
 #, c-format
 msgid "  \\if EXPR               begin conditional block\n"
 msgstr "  \\if EXPR               début du bloc conditionnel\n"
 
-#: help.c:217
+#: help.c:221
 #, c-format
 msgid "  \\elif EXPR             alternative within current conditional block\n"
 msgstr "  \\elif                  alternative à l'intérieur du bloc conditionnel courant\n"
 
-#: help.c:218
+#: help.c:222
 #, c-format
 msgid "  \\else                  final alternative within current conditional block\n"
 msgstr "  \\else                  alternative finale à l'intérieur du bloc conditionnel courant\n"
 
-#: help.c:219
+#: help.c:223
 #, c-format
 msgid "  \\endif                 end conditional block\n"
 msgstr "  \\endif                 bloc conditionnel de fin\n"
 
-#: help.c:222
+#: help.c:226
 #, c-format
 msgid "Informational\n"
 msgstr "Informations\n"
 
-#: help.c:223
+#: help.c:227
 #, c-format
 msgid "  (options: S = show system objects, + = additional detail)\n"
 msgstr "  (options : S = affiche les objets systèmes, + = informations supplémentaires)\n"
 
-#: help.c:224
+#: help.c:228
 #, c-format
 msgid "  \\d[S+]                 list tables, views, and sequences\n"
 msgstr "  \\d[S+]               affiche la liste des tables, vues et séquences\n"
 
-#: help.c:225
+#: help.c:229
 #, c-format
 msgid "  \\d[S+]  NAME           describe table, view, sequence, or index\n"
 msgstr ""
 "  \\d[S+] NOM           affiche la description de la table, de la vue,\n"
 "                       de la séquence ou de l'index\n"
 
-#: help.c:226
+#: help.c:230
 #, c-format
 msgid "  \\da[S]  [PATTERN]      list aggregates\n"
 msgstr "  \\da[S] [MODÈLE]      affiche les agrégats\n"
 
-#: help.c:227
+#: help.c:231
 #, c-format
 msgid "  \\dA[+]  [PATTERN]      list access methods\n"
 msgstr "  \\dA[+] [MODÈLE]      affiche la liste des méthodes d'accès\n"
 
-#: help.c:228
+#: help.c:232
 #, c-format
 msgid "  \\dAc[+] [AMPTRN [TYPEPTRN]]  list operator classes\n"
 msgstr "  \\dAc[+] [AMPTRN [TYPEPTRN]]  affiche les classes d'opérateurs\n"
 
-#: help.c:229
+#: help.c:233
 #, c-format
 msgid "  \\dAf[+] [AMPTRN [TYPEPTRN]]  list operator families\n"
 msgstr "  \\dAf[+] [AMPTRN [TYPEPTRN]]  affiche les familles d'opérateur\n"
 
-#: help.c:230
+#: help.c:234
 #, c-format
 msgid "  \\dAo[+] [AMPTRN [OPFPTRN]]   list operators of operator families\n"
 msgstr "  \\dAo[+] [AMPTRN [OPFPTRN]]   affiche les opérateurs des familles d'opérateur\n"
 
-#: help.c:231
+#: help.c:235
 #, c-format
 msgid "  \\dAp[+] [AMPTRN [OPFPTRN]]   list support functions of operator families\n"
 msgstr "  \\dAp[+] [AMPTRN [OPFPTRN]]   liste les fonctions de support des familles d'opérateur\n"
 
-#: help.c:232
+#: help.c:236
 #, c-format
 msgid "  \\db[+]  [PATTERN]      list tablespaces\n"
 msgstr "  \\db[+] [MODÈLE]      affiche la liste des tablespaces\n"
 
-#: help.c:233
+#: help.c:237
 #, c-format
 msgid "  \\dc[S+] [PATTERN]      list conversions\n"
 msgstr "  \\dc[S+] [MODÈLE]     affiche la liste des conversions\n"
 
-#: help.c:234
+#: help.c:238
 #, c-format
 msgid "  \\dC[+]  [PATTERN]      list casts\n"
 msgstr "  \\dC[+] [MODÈLE]      affiche la liste des transtypages\n"
 
-#: help.c:235
+#: help.c:239
 #, c-format
 msgid "  \\dd[S]  [PATTERN]      show object descriptions not displayed elsewhere\n"
 msgstr ""
 "  \\dd[S] [MODÈLE]      affiche les commentaires des objets dont le commentaire\n"
 "                        n'est affiché nul part ailleurs\n"
 
-#: help.c:236
+#: help.c:240
 #, c-format
 msgid "  \\dD[S+] [PATTERN]      list domains\n"
 msgstr "  \\dD[S+] [MODÈLE]     affiche la liste des domaines\n"
 
-#: help.c:237
+#: help.c:241
 #, c-format
 msgid "  \\ddp    [PATTERN]      list default privileges\n"
 msgstr "  \\ddp   [MODÈLE]      affiche les droits par défaut\n"
 
-#: help.c:238
+#: help.c:242
 #, c-format
 msgid "  \\dE[S+] [PATTERN]      list foreign tables\n"
 msgstr "  \\dE[S+] [MODÈLE]     affiche la liste des tables distantes\n"
 
-#: help.c:239
+#: help.c:243
 #, c-format
 msgid "  \\des[+] [PATTERN]      list foreign servers\n"
 msgstr "  \\des[+] [MODÈLE]     affiche la liste des serveurs distants\n"
 
-#: help.c:240
+#: help.c:244
 #, c-format
 msgid "  \\det[+] [PATTERN]      list foreign tables\n"
 msgstr "  \\det[+] [MODÈLE]     affiche la liste des tables distantes\n"
 
-#: help.c:241
+#: help.c:245
 #, c-format
 msgid "  \\deu[+] [PATTERN]      list user mappings\n"
 msgstr "  \\deu[+] [MODÈLE]     affiche la liste des correspondances utilisateurs\n"
 
-#: help.c:242
+#: help.c:246
 #, c-format
 msgid "  \\dew[+] [PATTERN]      list foreign-data wrappers\n"
 msgstr "  \\dew[+] [MODÈLE]     affiche la liste des wrappers de données distantes\n"
 
-#: help.c:243
+#: help.c:247
 #, c-format
 msgid ""
 "  \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n"
@@ -3088,67 +3121,67 @@ msgstr ""
 "  \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n"
 "                         affiche la liste des fonctions [seulement agrégat/normal/procédure/trigger/window]\n"
 
-#: help.c:245
+#: help.c:249
 #, c-format
 msgid "  \\dF[+]  [PATTERN]      list text search configurations\n"
 msgstr ""
 "  \\dF[+] [MODÈLE]      affiche la liste des configurations de la recherche\n"
 "                        plein texte\n"
 
-#: help.c:246
+#: help.c:250
 #, c-format
 msgid "  \\dFd[+] [PATTERN]      list text search dictionaries\n"
 msgstr ""
 "  \\dFd[+] [MODÈLE]     affiche la liste des dictionnaires de la recherche de\n"
 "                        texte\n"
 
-#: help.c:247
+#: help.c:251
 #, c-format
 msgid "  \\dFp[+] [PATTERN]      list text search parsers\n"
 msgstr ""
 "  \\dFp[+] [MODÈLE]        affiche la liste des analyseurs de la recherche de\n"
 "                       texte\n"
 
-#: help.c:248
+#: help.c:252
 #, c-format
 msgid "  \\dFt[+] [PATTERN]      list text search templates\n"
 msgstr ""
 "  \\dFt[+] [MODÈLE]     affiche la liste des modèles de la recherche de\n"
 "                        texte\n"
 
-#: help.c:249
+#: help.c:253
 #, c-format
 msgid "  \\dg[S+] [PATTERN]      list roles\n"
 msgstr "  \\dg[S+]  [MODÈLE]    affiche la liste des rôles (utilisateurs)\n"
 
-#: help.c:250
+#: help.c:254
 #, c-format
 msgid "  \\di[S+] [PATTERN]      list indexes\n"
 msgstr "  \\di[S+] [MODÈLE]     affiche la liste des index\n"
 
-#: help.c:251
+#: help.c:255
 #, c-format
 msgid "  \\dl                    list large objects, same as \\lo_list\n"
 msgstr ""
 "  \\dl                  affiche la liste des « Large Objects », identique à\n"
 "                        \\lo_list\n"
 
-#: help.c:252
+#: help.c:256
 #, c-format
 msgid "  \\dL[S+] [PATTERN]      list procedural languages\n"
 msgstr "  \\dL[S+] [MODÈLE]     affiche la liste des langages procéduraux\n"
 
-#: help.c:253
+#: help.c:257
 #, c-format
 msgid "  \\dm[S+] [PATTERN]      list materialized views\n"
 msgstr "  \\dm[S+] [MODÈLE]     affiche la liste des vues matérialisées\n"
 
-#: help.c:254
+#: help.c:258
 #, c-format
 msgid "  \\dn[S+] [PATTERN]      list schemas\n"
 msgstr "  \\dn[S+]  [MODÈLE]    affiche la liste des schémas\n"
 
-#: help.c:255
+#: help.c:259
 #, c-format
 msgid ""
 "  \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n"
@@ -3157,132 +3190,132 @@ msgstr ""
 "  \\do[S+]  [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n"
 "                        affiche la liste des opérateurs\n"
 
-#: help.c:257
+#: help.c:261
 #, c-format
 msgid "  \\dO[S+] [PATTERN]      list collations\n"
 msgstr "  \\dO[S+] [MODÈLE]     affiche la liste des collationnements\n"
 
-#: help.c:258
+#: help.c:262
 #, c-format
 msgid "  \\dp     [PATTERN]      list table, view, and sequence access privileges\n"
 msgstr ""
 "  \\dp     [MODÈLE]     affiche la liste des droits d'accès aux tables,\n"
 "                        vues, séquences\n"
 
-#: help.c:259
+#: help.c:263
 #, c-format
 msgid "  \\dP[itn+] [PATTERN]    list [only index/table] partitioned relations [n=nested]\n"
 msgstr "  \\dP[itn+] [PATTERN]    affiche les relations partitionnées [seulement index/table]  [n=imbriquées]\n"
 
-#: help.c:260
+#: help.c:264
 #, c-format
 msgid "  \\drds [ROLEPTRN [DBPTRN]] list per-database role settings\n"
 msgstr ""
 "  \\drds [ROLEPTRN [DBPTRN]] liste la configuration utilisateur par base de données\n"
 "\n"
 
-#: help.c:261
+#: help.c:265
 #, c-format
 msgid "  \\dRp[+] [PATTERN]      list replication publications\n"
 msgstr "  \\dRp[S+] [MODÈLE]    affiche la liste des publications de réplication\n"
 
-#: help.c:262
+#: help.c:266
 #, c-format
 msgid "  \\dRs[+] [PATTERN]      list replication subscriptions\n"
 msgstr "  \\dRs[+] [MODÈLE]     affiche la liste des souscriptions de réplication\n"
 
-#: help.c:263
+#: help.c:267
 #, c-format
 msgid "  \\ds[S+] [PATTERN]      list sequences\n"
 msgstr "  \\ds[S+] [MODÈLE]     affiche la liste des séquences\n"
 
-#: help.c:264
+#: help.c:268
 #, c-format
 msgid "  \\dt[S+] [PATTERN]      list tables\n"
 msgstr "  \\dt[S+] [MODÈLE]     affiche la liste des tables\n"
 
-#: help.c:265
+#: help.c:269
 #, c-format
 msgid "  \\dT[S+] [PATTERN]      list data types\n"
 msgstr "  \\dT[S+] [MODÈLE]     affiche la liste des types de données\n"
 
-#: help.c:266
+#: help.c:270
 #, c-format
 msgid "  \\du[S+] [PATTERN]      list roles\n"
 msgstr "  \\du[S+]  [MODÈLE]    affiche la liste des rôles (utilisateurs)\n"
 
-#: help.c:267
+#: help.c:271
 #, c-format
 msgid "  \\dv[S+] [PATTERN]      list views\n"
 msgstr "  \\dv[S+] [MODÈLE]     affiche la liste des vues\n"
 
-#: help.c:268
+#: help.c:272
 #, c-format
 msgid "  \\dx[+]  [PATTERN]      list extensions\n"
 msgstr "  \\dx[+] [MODÈLE]      affiche la liste des extensions\n"
 
-#: help.c:269
+#: help.c:273
 #, c-format
 msgid "  \\dX     [PATTERN]      list extended statistics\n"
 msgstr "  \\dX   [MODÈLE]      affiche les statistiques étendues\n"
 
-#: help.c:270
+#: help.c:274
 #, c-format
 msgid "  \\dy[+]  [PATTERN]      list event triggers\n"
 msgstr "  \\dy[+]   [MODÈLE]   affiche les triggers sur évènement\n"
 
-#: help.c:271
+#: help.c:275
 #, c-format
 msgid "  \\l[+]   [PATTERN]      list databases\n"
 msgstr "  \\l[+] [MODÈLE]     affiche la liste des bases de données\n"
 
-#: help.c:272
+#: help.c:276
 #, c-format
 msgid "  \\sf[+]  FUNCNAME       show a function's definition\n"
 msgstr "  \\sf[+] [FONCTION]    édite la définition d'une fonction\n"
 
-#: help.c:273
+#: help.c:277
 #, c-format
 msgid "  \\sv[+]  VIEWNAME       show a view's definition\n"
 msgstr "  \\sv [FONCTION]       édite la définition d'une vue\n"
 
-#: help.c:274
+#: help.c:278
 #, c-format
 msgid "  \\z      [PATTERN]      same as \\dp\n"
 msgstr "  \\z      [MODÈLE]     identique à \\dp\n"
 
-#: help.c:277
+#: help.c:281
 #, c-format
 msgid "Formatting\n"
 msgstr "Formatage\n"
 
-#: help.c:278
+#: help.c:282
 #, c-format
 msgid "  \\a                     toggle between unaligned and aligned output mode\n"
 msgstr ""
 "  \\a                   bascule entre les modes de sortie alignée et non\n"
 "                        alignée\n"
 
-#: help.c:279
+#: help.c:283
 #, c-format
 msgid "  \\C [STRING]            set table title, or unset if none\n"
 msgstr ""
 "  \\C [CHAÎNE]          initialise le titre d'une table, ou le désactive en\n"
 "                        l'absence d'argument\n"
 
-#: help.c:280
+#: help.c:284
 #, c-format
 msgid "  \\f [STRING]            show or set field separator for unaligned query output\n"
 msgstr ""
 "  \\f [CHAÎNE]          affiche ou initialise le séparateur de champ pour\n"
 "                        une sortie non alignée des requêtes\n"
 
-#: help.c:281
+#: help.c:285
 #, c-format
 msgid "  \\H                     toggle HTML output mode (currently %s)\n"
 msgstr "  \\H                   bascule le mode de sortie HTML (actuellement %s)\n"
 
-#: help.c:283
+#: help.c:287
 #, c-format
 msgid ""
 "  \\pset [NAME [VALUE]]   set table output option\n"
@@ -3301,29 +3334,29 @@ msgstr ""
 "                         unicode_border_linestyle|unicode_column_linestyle|\n"
 "                         unicode_header_linestyle)\n"
 
-#: help.c:290
+#: help.c:294
 #, c-format
 msgid "  \\t [on|off]            show only rows (currently %s)\n"
 msgstr "  \\t                   affiche uniquement les lignes (actuellement %s)\n"
 
-#: help.c:292
+#: help.c:296
 #, c-format
 msgid "  \\T [STRING]            set HTML <table> tag attributes, or unset if none\n"
 msgstr ""
 "  \\T [CHAÎNE]          initialise les attributs HTML de la balise <table>,\n"
 "                        ou l'annule en l'absence d'argument\n"
 
-#: help.c:293
+#: help.c:297
 #, c-format
 msgid "  \\x [on|off|auto]       toggle expanded output (currently %s)\n"
 msgstr "  \\x [on|off|auto]     bascule l'affichage étendu (actuellement %s)\n"
 
-#: help.c:297
+#: help.c:301
 #, c-format
 msgid "Connection\n"
 msgstr "Connexions\n"
 
-#: help.c:299
+#: help.c:303
 #, c-format
 msgid ""
 "  \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n"
@@ -3333,7 +3366,7 @@ msgstr ""
 "                        se connecte à une autre base de données\n"
 "                        (actuellement « %s »)\n"
 
-#: help.c:303
+#: help.c:307
 #, c-format
 msgid ""
 "  \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n"
@@ -3343,17 +3376,17 @@ msgstr ""
 "                        se connecte à une nouvelle base de données\n"
 "                        (aucune connexion actuellement)\n"
 
-#: help.c:305
+#: help.c:309
 #, c-format
 msgid "  \\conninfo              display information about current connection\n"
 msgstr "  \\conninfo            affiche des informations sur la connexion en cours\n"
 
-#: help.c:306
+#: help.c:310
 #, c-format
 msgid "  \\encoding [ENCODING]   show or set client encoding\n"
 msgstr "  \\encoding [ENCODAGE] affiche ou initialise l'encodage du client\n"
 
-#: help.c:307
+#: help.c:311
 #, c-format
 msgid "  \\password [USERNAME]   securely change the password for a user\n"
 msgstr ""
@@ -3361,65 +3394,65 @@ msgstr ""
 "                        modifie de façon sécurisé le mot de passe d'un\n"
 "                        utilisateur\n"
 
-#: help.c:310
+#: help.c:314
 #, c-format
 msgid "Operating System\n"
 msgstr "Système d'exploitation\n"
 
-#: help.c:311
+#: help.c:315
 #, c-format
 msgid "  \\cd [DIR]              change the current working directory\n"
 msgstr "  \\cd [RÉPERTOIRE]     change de répertoire de travail\n"
 
-#: help.c:312
+#: help.c:316
 #, c-format
 msgid "  \\setenv NAME [VALUE]   set or unset environment variable\n"
 msgstr "  \\setenv NOM [VALEUR] (dés)initialise une variable d'environnement\n"
 
-#: help.c:313
+#: help.c:317
 #, c-format
 msgid "  \\timing [on|off]       toggle timing of commands (currently %s)\n"
 msgstr ""
 "  \\timing [on|off]     bascule l'activation du chronométrage des commandes\n"
 "                        (actuellement %s)\n"
 
-#: help.c:315
+#: help.c:319
 #, c-format
 msgid "  \\! [COMMAND]           execute command in shell or start interactive shell\n"
 msgstr ""
 "  \\! [COMMANDE]        exécute la commande dans un shell ou exécute un\n"
 "                        shell interactif\n"
 
-#: help.c:318
+#: help.c:322
 #, c-format
 msgid "Variables\n"
 msgstr "Variables\n"
 
-#: help.c:319
+#: help.c:323
 #, c-format
 msgid "  \\prompt [TEXT] NAME    prompt user to set internal variable\n"
 msgstr ""
 "  \\prompt [TEXTE] NOM  demande à l'utilisateur de configurer la variable\n"
 "                        interne\n"
 
-#: help.c:320
+#: help.c:324
 #, c-format
 msgid "  \\set [NAME [VALUE]]    set internal variable, or list all if no parameters\n"
 msgstr ""
 "  \\set [NOM [VALEUR]]  initialise une variable interne ou les affiche\n"
 "                        toutes en l'absence de paramètre\n"
 
-#: help.c:321
+#: help.c:325
 #, c-format
 msgid "  \\unset NAME            unset (delete) internal variable\n"
 msgstr "  \\unset NOM           désactive (supprime) la variable interne\n"
 
-#: help.c:324
+#: help.c:328
 #, c-format
 msgid "Large Objects\n"
 msgstr "« Large objects »\n"
 
-#: help.c:325
+#: help.c:329
 #, c-format
 msgid ""
 "  \\lo_export LOBOID FILE\n"
@@ -3433,7 +3466,7 @@ msgstr ""
 "  \\lo_unlink OIDLOB\n"
 "                        opérations sur les « Large Objects »\n"
 
-#: help.c:352
+#: help.c:356
 #, c-format
 msgid ""
 "List of specially treated variables\n"
@@ -3442,12 +3475,12 @@ msgstr ""
 "Liste des variables traitées spécialement\n"
 "\n"
 
-#: help.c:354
+#: help.c:358
 #, c-format
 msgid "psql variables:\n"
 msgstr "variables psql :\n"
 
-#: help.c:356
+#: help.c:360
 #, c-format
 msgid ""
 "  psql --set=NAME=VALUE\n"
@@ -3458,7 +3491,7 @@ msgstr ""
 "  ou \\set NOM VALEUR dans psql\n"
 "\n"
 
-#: help.c:358
+#: help.c:362
 #, c-format
 msgid ""
 "  AUTOCOMMIT\n"
@@ -3467,7 +3500,7 @@ msgstr ""
 "  AUTOCOMMIT\n"
 "    si activé, les commandes SQL réussies sont automatiquement validées\n"
 
-#: help.c:360
+#: help.c:364
 #, c-format
 msgid ""
 "  COMP_KEYWORD_CASE\n"
@@ -3478,7 +3511,7 @@ msgstr ""
 "    détermine la casse utilisée pour compléter les mots clés SQL\n"
 "    [lower, upper, preserve-lower, preserve-upper]\n"
 
-#: help.c:363
+#: help.c:367
 #, c-format
 msgid ""
 "  DBNAME\n"
@@ -3487,7 +3520,7 @@ msgstr ""
 "  DBNAME\n"
 "    le nom de base de données actuel\n"
 
-#: help.c:365
+#: help.c:369
 #, c-format
 msgid ""
 "  ECHO\n"
@@ -3498,7 +3531,7 @@ msgstr ""
 "    contrôle ce qui est envoyé sur la sortie standard\n"
 "    [all, errors, none, queries]\n"
 
-#: help.c:368
+#: help.c:372
 #, c-format
 msgid ""
 "  ECHO_HIDDEN\n"
@@ -3509,7 +3542,7 @@ msgstr ""
 "    si activé, affiche les requêtes internes exécutées par les méta-commandes ;\n"
 "    si configuré à « noexec », affiche les requêtes sans les exécuter\n"
 
-#: help.c:371
+#: help.c:375
 #, c-format
 msgid ""
 "  ENCODING\n"
@@ -3518,7 +3551,7 @@ msgstr ""
 "  ENCODING\n"
 "    encodage du jeu de caractères client\n"
 
-#: help.c:373
+#: help.c:377
 #, c-format
 msgid ""
 "  ERROR\n"
@@ -3527,7 +3560,7 @@ msgstr ""
 "  ERROR\n"
 "    true si la dernière requête a échoué, sinon false\n"
 
-#: help.c:375
+#: help.c:379
 #, c-format
 msgid ""
 "  FETCH_COUNT\n"
@@ -3537,7 +3570,7 @@ msgstr ""
 "    le nombre de lignes résultats à récupérer et à afficher à la fois\n"
 "    (0 pour illimité)\n"
 
-#: help.c:377
+#: help.c:381
 #, c-format
 msgid ""
 "  HIDE_TABLEAM\n"
@@ -3546,7 +3579,7 @@ msgstr ""
 "  HIDE_TABLEAM\n"
 "   si activé, les méthodes d'accès ne sont pas affichées\n"
 
-#: help.c:379
+#: help.c:383
 #, c-format
 msgid ""
 "  HIDE_TOAST_COMPRESSION\n"
@@ -3556,7 +3589,7 @@ msgstr ""
 "    si activé, les méthodes de compression methods ne sont pas affichées\n"
 "\n"
 
-#: help.c:381
+#: help.c:385
 #, c-format
 msgid ""
 "  HISTCONTROL\n"
@@ -3565,7 +3598,7 @@ msgstr ""
 "  HISTCONTROL\n"
 "    contrôle l'historique des commandes [ignorespace, ignoredups, ignoreboth]\n"
 
-#: help.c:383
+#: help.c:387
 #, c-format
 msgid ""
 "  HISTFILE\n"
@@ -3574,7 +3607,7 @@ msgstr ""
 "  HISTFILE\n"
 "    nom du fichier utilisé pour stocker l'historique des commandes\n"
 
-#: help.c:385
+#: help.c:389
 #, c-format
 msgid ""
 "  HISTSIZE\n"
@@ -3583,7 +3616,7 @@ msgstr ""
 "  HISTSIZE\n"
 "    nombre maximum de commandes à stocker dans l'historique de commandes\n"
 
-#: help.c:387
+#: help.c:391
 #, c-format
 msgid ""
 "  HOST\n"
@@ -3592,7 +3625,7 @@ msgstr ""
 "  HOST\n"
 "    l'hôte de la base de données\n"
 
-#: help.c:389
+#: help.c:393
 #, c-format
 msgid ""
 "  IGNOREEOF\n"
@@ -3601,7 +3634,7 @@ msgstr ""
 "  IGNOREEOF\n"
 "    nombre d'EOF nécessaire pour terminer une session interactive\n"
 
-#: help.c:391
+#: help.c:395
 #, c-format
 msgid ""
 "  LASTOID\n"
@@ -3610,7 +3643,7 @@ msgstr ""
 "  LASTOID\n"
 "    valeur du dernier OID affecté\n"
 
-#: help.c:393
+#: help.c:397
 #, c-format
 msgid ""
 "  LAST_ERROR_MESSAGE\n"
@@ -3621,7 +3654,7 @@ msgstr ""
 "  LAST_ERROR_SQLSTATE\n"
 "    message et SQLSTATE de la dernière erreur ou une chaîne vide et \"00000\" if si aucune erreur\n"
 
-#: help.c:396
+#: help.c:400
 #, c-format
 msgid ""
 "  ON_ERROR_ROLLBACK\n"
@@ -3630,7 +3663,7 @@ msgstr ""
 "  ON_ERROR_ROLLBACK\n"
 "    si activé, une erreur n'arrête pas une transaction (utilise des savepoints implicites)\n"
 
-#: help.c:398
+#: help.c:402
 #, c-format
 msgid ""
 "  ON_ERROR_STOP\n"
@@ -3639,7 +3672,7 @@ msgstr ""
 "  ON_ERROR_STOP\n"
 "    arrête l'exécution d'un batch après une erreur\n"
 
-#: help.c:400
+#: help.c:404
 #, c-format
 msgid ""
 "  PORT\n"
@@ -3648,7 +3681,7 @@ msgstr ""
 "  PORT\n"
 "    port du serveur pour la connexion actuelle\n"
 
-#: help.c:402
+#: help.c:406
 #, c-format
 msgid ""
 "  PROMPT1\n"
@@ -3657,7 +3690,7 @@ msgstr ""
 "  PROMPT1\n"
 "    spécifie l'invite standard de psql\n"
 
-#: help.c:404
+#: help.c:408
 #, c-format
 msgid ""
 "  PROMPT2\n"
@@ -3666,7 +3699,7 @@ msgstr ""
 "  PROMPT2\n"
 "    spécifie l'invite utilisé quand une requête continue après la ligne courante\n"
 
-#: help.c:406
+#: help.c:410
 #, c-format
 msgid ""
 "  PROMPT3\n"
@@ -3675,7 +3708,7 @@ msgstr ""
 "  PROMPT3\n"
 "    spécifie l'invite utilisée lors d'un COPY ... FROM STDIN\n"
 
-#: help.c:408
+#: help.c:412
 #, c-format
 msgid ""
 "  QUIET\n"
@@ -3684,7 +3717,7 @@ msgstr ""
 "  QUIET\n"
 "    s'exécute en silence (identique à l'option -q)\n"
 
-#: help.c:410
+#: help.c:414
 #, c-format
 msgid ""
 "  ROW_COUNT\n"
@@ -3693,7 +3726,7 @@ msgstr ""
 "  ROW_COUNT\n"
 "    nombre de lignes renvoyées ou affectées par la dernière requête, ou 0\n"
 
-#: help.c:412
+#: help.c:416
 #, c-format
 msgid ""
 "  SERVER_VERSION_NAME\n"
@@ -3704,7 +3737,7 @@ msgstr ""
 "  SERVER_VERSION_NUM\n"
 "    version du serveur (chaîne courte ou format numérique)\n"
 
-#: help.c:415
+#: help.c:419
 #, c-format
 msgid ""
 "  SHOW_CONTEXT\n"
@@ -3713,7 +3746,7 @@ msgstr ""
 "  SHOW_CONTEXT\n"
 "    contrôle l'affichage des champs de contexte du message [never, errors, always]\n"
 
-#: help.c:417
+#: help.c:421
 #, c-format
 msgid ""
 "  SINGLELINE\n"
@@ -3722,7 +3755,7 @@ msgstr ""
 "  SINGLELINE\n"
 "    une fin de ligne termine le mode de commande SQL (identique à l'option -S)\n"
 
-#: help.c:419
+#: help.c:423
 #, c-format
 msgid ""
 "  SINGLESTEP\n"
@@ -3731,7 +3764,7 @@ msgstr ""
 "  SINGLESTEP\n"
 "    mode pas à pas (identique à l'option -s)\n"
 
-#: help.c:421
+#: help.c:425
 #, c-format
 msgid ""
 "  SQLSTATE\n"
@@ -3740,7 +3773,7 @@ msgstr ""
 "  SQLSTATE\n"
 "    SQLSTATE de la dernière requête, ou \"00000\" si aucune erreur\n"
 
-#: help.c:423
+#: help.c:427
 #, c-format
 msgid ""
 "  USER\n"
@@ -3749,7 +3782,7 @@ msgstr ""
 "  USER\n"
 "    l'utilisateur actuellement connecté\n"
 
-#: help.c:425
+#: help.c:429
 #, c-format
 msgid ""
 "  VERBOSITY\n"
@@ -3758,7 +3791,7 @@ msgstr ""
 "  VERBOSITY\n"
 "    contrôle la verbosité des rapports d'erreurs [default, verbose, terse, sqlstate]\n"
 
-#: help.c:427
+#: help.c:431
 #, c-format
 msgid ""
 "  VERSION\n"
@@ -3771,7 +3804,7 @@ msgstr ""
 "  VERSION_NUM\n"
 "    version de psql (chaîne longue, chaîne courte, ou format numérique)\n"
 
-#: help.c:432
+#: help.c:436
 #, c-format
 msgid ""
 "\n"
@@ -3780,7 +3813,7 @@ msgstr ""
 "\n"
 "Paramètres d'affichage :\n"
 
-#: help.c:434
+#: help.c:438
 #, c-format
 msgid ""
 "  psql --pset=NAME[=VALUE]\n"
@@ -3791,7 +3824,7 @@ msgstr ""
 "  ou \\pset NOM [VALEUR] dans psql\n"
 "\n"
 
-#: help.c:436
+#: help.c:440
 #, c-format
 msgid ""
 "  border\n"
@@ -3800,7 +3833,7 @@ msgstr ""
 "  border\n"
 "    style de bordure (nombre)\n"
 
-#: help.c:438
+#: help.c:442
 #, c-format
 msgid ""
 "  columns\n"
@@ -3809,7 +3842,7 @@ msgstr ""
 "  columns\n"
 "    largeur cible pour le format encadré\n"
 
-#: help.c:440
+#: help.c:444
 #, c-format
 msgid ""
 "  expanded (or x)\n"
@@ -3818,7 +3851,7 @@ msgstr ""
 "  expanded (ou x)\n"
 "    sortie étendue [on, off, auto]\n"
 
-#: help.c:442
+#: help.c:446
 #, c-format
 msgid ""
 "  fieldsep\n"
@@ -3827,7 +3860,7 @@ msgstr ""
 "  fieldsep\n"
 "    champ séparateur pour l'affichage non aligné (par défaut « %s »)\n"
 
-#: help.c:445
+#: help.c:449
 #, c-format
 msgid ""
 "  fieldsep_zero\n"
@@ -3836,7 +3869,7 @@ msgstr ""
 "  fieldsep_zero\n"
 "    configure le séparateur de champ pour l'affichage non alignée à l'octet zéro\n"
 
-#: help.c:447
+#: help.c:451
 #, c-format
 msgid ""
 "  footer\n"
@@ -3845,7 +3878,7 @@ msgstr ""
 "  footer\n"
 "    active ou désactive l'affiche du bas de tableau [on, off]\n"
 
-#: help.c:449
+#: help.c:453
 #, c-format
 msgid ""
 "  format\n"
@@ -3854,7 +3887,7 @@ msgstr ""
 "  format\n"
 "    active le format de sortie [unaligned, aligned, wrapped, html, asciidoc, ...]\n"
 
-#: help.c:451
+#: help.c:455
 #, c-format
 msgid ""
 "  linestyle\n"
@@ -3863,7 +3896,7 @@ msgstr ""
 "  linestyle\n"
 "    configure l'affichage des lignes de bordure [ascii, old-ascii, unicode]\n"
 
-#: help.c:453
+#: help.c:457
 #, c-format
 msgid ""
 "  null\n"
@@ -3872,7 +3905,7 @@ msgstr ""
 "  null\n"
 "    configure la chaîne à afficher à la place d'une valeur NULL\n"
 
-#: help.c:455
+#: help.c:459
 #, c-format
 msgid ""
 "  numericlocale\n"
@@ -3882,7 +3915,7 @@ msgstr ""
 "    active ou désactive l'affichage d'un caractère spécifique à la locale pour séparer\n"
 "    des groupes de chiffres [on, off]\n"
 
-#: help.c:457
+#: help.c:461
 #, c-format
 msgid ""
 "  pager\n"
@@ -3891,7 +3924,7 @@ msgstr ""
 "  pager\n"
 "    contrôle quand un paginateur externe est utilisé [yes, no, always]\n"
 
-#: help.c:459
+#: help.c:463
 #, c-format
 msgid ""
 "  recordsep\n"
@@ -3900,7 +3933,7 @@ msgstr ""
 "  recordsep\n"
 "    enregistre le séparateur de ligne pour les affichages non alignés\n"
 
-#: help.c:461
+#: help.c:465
 #, c-format
 msgid ""
 "  recordsep_zero\n"
@@ -3910,7 +3943,7 @@ msgstr ""
 "    initialise le séparateur d'enregistrements pour un affichage\n"
 "    non aligné à l'octet zéro\n"
 
-#: help.c:463
+#: help.c:467
 #, c-format
 msgid ""
 "  tableattr (or T)\n"
@@ -3922,7 +3955,7 @@ msgstr ""
 "    proportionnelles de colonnes pour les types de données alignés à gauche dans le\n"
 "    format latex-longtable\n"
 
-#: help.c:466
+#: help.c:470
 #, c-format
 msgid ""
 "  title\n"
@@ -3931,7 +3964,7 @@ msgstr ""
 "  title\n"
 "    configure le titre de la table pour toute table affichée\n"
 
-#: help.c:468
+#: help.c:472
 #, c-format
 msgid ""
 "  tuples_only\n"
@@ -3940,7 +3973,7 @@ msgstr ""
 "  tuples_only\n"
 "    si activé, seules les données de la table sont affichées\n"
 
-#: help.c:470
+#: help.c:474
 #, c-format
 msgid ""
 "  unicode_border_linestyle\n"
@@ -3953,7 +3986,7 @@ msgstr ""
 "  unicode_header_linestyle\n"
 "    configure le style d'affichage de ligne Unicode [single, double]\n"
 
-#: help.c:475
+#: help.c:479
 #, c-format
 msgid ""
 "\n"
@@ -3962,7 +3995,7 @@ msgstr ""
 "\n"
 "Variables d'environnement :\n"
 
-#: help.c:479
+#: help.c:483
 #, c-format
 msgid ""
 "  NAME=VALUE [NAME=VALUE] psql ...\n"
@@ -3973,7 +4006,7 @@ msgstr ""
 "  ou \\setenv NOM [VALEUR] dans psql\n"
 "\n"
 
-#: help.c:481
+#: help.c:485
 #, c-format
 msgid ""
 "  set NAME=VALUE\n"
@@ -3986,7 +4019,7 @@ msgstr ""
 "  ou \\setenv NOM [VALEUR] dans psql\n"
 "\n"
 
-#: help.c:484
+#: help.c:488
 #, c-format
 msgid ""
 "  COLUMNS\n"
@@ -3995,7 +4028,7 @@ msgstr ""
 "  COLUMNS\n"
 "    nombre de colonnes pour le format encadré\n"
 
-#: help.c:486
+#: help.c:490
 #, c-format
 msgid ""
 "  PGAPPNAME\n"
@@ -4004,7 +4037,7 @@ msgstr ""
 "  PGAPPNAME\n"
 "    identique au paramètre de connexion application_name\n"
 
-#: help.c:488
+#: help.c:492
 #, c-format
 msgid ""
 "  PGDATABASE\n"
@@ -4013,7 +4046,7 @@ msgstr ""
 "  PGDATABASE\n"
 "    identique au paramètre de connexion dbname\n"
 
-#: help.c:490
+#: help.c:494
 #, c-format
 msgid ""
 "  PGHOST\n"
@@ -4022,7 +4055,7 @@ msgstr ""
 "  PGHOST\n"
 "    identique au paramètre de connexion host\n"
 
-#: help.c:492
+#: help.c:496
 #, c-format
 msgid ""
 "  PGPASSFILE\n"
@@ -4031,7 +4064,7 @@ msgstr ""
 "  PGPASSFILE\n"
 "    nom du fichier de mot de passe\n"
 
-#: help.c:494
+#: help.c:498
 #, c-format
 msgid ""
 "  PGPASSWORD\n"
@@ -4040,7 +4073,7 @@ msgstr ""
 "  PGPASSWORD\n"
 "    mot de passe de connexion (non recommendé)\n"
 
-#: help.c:496
+#: help.c:500
 #, c-format
 msgid ""
 "  PGPORT\n"
@@ -4049,7 +4082,7 @@ msgstr ""
 "  PGPORT\n"
 "    identique au paramètre de connexion port\n"
 
-#: help.c:498
+#: help.c:502
 #, c-format
 msgid ""
 "  PGUSER\n"
@@ -4058,7 +4091,7 @@ msgstr ""
 "  PGUSER\n"
 "    identique au paramètre de connexion user\n"
 
-#: help.c:500
+#: help.c:504
 #, c-format
 msgid ""
 "  PSQL_EDITOR, EDITOR, VISUAL\n"
@@ -4067,7 +4100,7 @@ msgstr ""
 "  PSQL_EDITOR, EDITOR, VISUAL\n"
 "    éditeur utilisé par les commandes \\e, \\ef et \\ev\n"
 
-#: help.c:502
+#: help.c:506
 #, c-format
 msgid ""
 "  PSQL_EDITOR_LINENUMBER_ARG\n"
@@ -4076,7 +4109,7 @@ msgstr ""
 "  PSQL_EDITOR_LINENUMBER_ARG\n"
 "    comment spécifier un numéro de ligne lors de l'appel de l'éditeur\n"
 
-#: help.c:504
+#: help.c:508
 #, c-format
 msgid ""
 "  PSQL_HISTORY\n"
@@ -4085,7 +4118,7 @@ msgstr ""
 "  PSQL_HISTORY\n"
 "    autre emplacement pour le fichier d'historique des commandes\n"
 
-#: help.c:506
+#: help.c:510
 #, c-format
 msgid ""
 "  PSQL_PAGER, PAGER\n"
@@ -4094,7 +4127,7 @@ msgstr ""
 "  PSQL_PAGER, PAGER\n"
 "    nom du paginateur externe\n"
 
-#: help.c:508
+#: help.c:512
 #, c-format
 msgid ""
 "  PSQLRC\n"
@@ -4103,7 +4136,7 @@ msgstr ""
 "  PSQLRC\n"
 "    autre emplacement pour le fichier .psqlrc de l'utilisateur\n"
 
-#: help.c:510
+#: help.c:514
 #, c-format
 msgid ""
 "  SHELL\n"
@@ -4112,7 +4145,7 @@ msgstr ""
 "  SHELL\n"
 "    shell utilisé par la commande \\!\n"
 
-#: help.c:512
+#: help.c:516
 #, c-format
 msgid ""
 "  TMPDIR\n"
@@ -4121,11 +4154,11 @@ msgstr ""
 "  TMPDIR\n"
 "    répertoire pour les fichiers temporaires\n"
 
-#: help.c:557
+#: help.c:561
 msgid "Available help:\n"
 msgstr "Aide-mémoire disponible :\n"
 
-#: help.c:652
+#: help.c:656
 #, c-format
 msgid ""
 "Command:     %s\n"
@@ -4144,7 +4177,7 @@ msgstr ""
 "URL: %s\n"
 "\n"
 
-#: help.c:675
+#: help.c:679
 #, c-format
 msgid ""
 "No help available for \"%s\".\n"
@@ -6619,7 +6652,7 @@ msgstr "option supplémentaire « %s » ignorée"
 msgid "could not find own program executable"
 msgstr "n'a pas pu trouver son propre exécutable"
 
-#: tab-complete.c:4940
+#: tab-complete.c:4954
 #, c-format
 msgid ""
 "tab completion query failed: %s\n"