summaryrefslogtreecommitdiff
path: root/src/pl
diff options
context:
space:
mode:
authorPeter Eisentraut2009-06-10 23:42:44 +0000
committerPeter Eisentraut2009-06-10 23:42:44 +0000
commit0b7b908882b18c6b1c34bb9e386c4f2fdb21f0db (patch)
tree212f4a087d1420d0ff2a778e015dc2b7e714f748 /src/pl
parent0465c52b00ee2e6d9f61d80fb56e8e402f0603fd (diff)
Translation updates
Diffstat (limited to 'src/pl')
-rw-r--r--src/pl/plperl/nls.mk4
-rw-r--r--src/pl/plperl/po/ja.po100
-rw-r--r--src/pl/plperl/po/pt_BR.po4
-rw-r--r--src/pl/plpgsql/src/po/de.po234
-rw-r--r--src/pl/plpgsql/src/po/es.po233
-rw-r--r--src/pl/plpgsql/src/po/fr.po4
-rw-r--r--src/pl/plpgsql/src/po/ja.po318
-rw-r--r--src/pl/plpython/nls.mk4
-rw-r--r--src/pl/plpython/po/ja.po294
-rw-r--r--src/pl/plpython/po/pt_BR.po10
-rw-r--r--src/pl/tcl/nls.mk4
-rw-r--r--src/pl/tcl/po/ja.po52
12 files changed, 907 insertions, 354 deletions
diff --git a/src/pl/plperl/nls.mk b/src/pl/plperl/nls.mk
index 030886c0bb9..0bd849ddcc1 100644
--- a/src/pl/plperl/nls.mk
+++ b/src/pl/plperl/nls.mk
@@ -1,5 +1,5 @@
-# $PostgreSQL: pgsql/src/pl/plperl/nls.mk,v 1.6 2009/06/04 18:33:07 tgl Exp $
+# $PostgreSQL: pgsql/src/pl/plperl/nls.mk,v 1.7 2009/06/10 23:42:44 petere Exp $
CATALOG_NAME := plperl
-AVAIL_LANGUAGES := de es fr pt_BR tr
+AVAIL_LANGUAGES := de es fr ja pt_BR tr
GETTEXT_FILES := plperl.c SPI.c
GETTEXT_TRIGGERS:= errmsg errmsg_plural:1,2 errdetail errdetail_log errdetail_plural:1,2 errhint errcontext
diff --git a/src/pl/plperl/po/ja.po b/src/pl/plperl/po/ja.po
new file mode 100644
index 00000000000..5bddc1b87ea
--- /dev/null
+++ b/src/pl/plperl/po/ja.po
@@ -0,0 +1,100 @@
+# LANGUAGE message translation file for plperl
+# Copyright (C) 2009 PostgreSQL Global Development Group
+# This file is distributed under the same license as the PostgreSQL package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PostgreSQL 8.4\n"
+"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
+"POT-Creation-Date: 2009-04-13 07:10+0000\n"
+"PO-Revision-Date: 2009-04-13 22:15+0900\n"
+"Last-Translator: Shigehiro Honda <honda@postgresql.jp>\n"
+"Language-Team: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: plperl.c:202
+msgid ""
+"If true, trusted and untrusted Perl code will be compiled in strict mode."
+msgstr "真ならば信頼し、信頼されないPerlのコードはstrictモードでコンパイルされます。"
+
+#: plperl.c:606 plperl.c:799
+#, c-format
+msgid "Perl hash contains nonexistent column \"%s\""
+msgstr "Perlハッシュに存在しない列\"%s\"が含まれます"
+
+#: plperl.c:775
+msgid "$_TD->{new} does not exist"
+msgstr "$_TD->{new}は存在しません"
+
+#: plperl.c:779
+msgid "$_TD->{new} is not a hash reference"
+msgstr "$_TD->{new}はハッシュへの参照ではありません"
+
+#: plperl.c:916 plperl.c:1615
+#, c-format
+msgid "PL/Perl functions cannot return type %s"
+msgstr "PL/Perl関数は%s型を返すことができません"
+
+#: plperl.c:928 plperl.c:1662
+#, c-format
+msgid "PL/Perl functions cannot accept type %s"
+msgstr "PL/Perl関数は%s型を受け付けられません"
+
+#: plperl.c:1004
+#, c-format
+msgid "creation of Perl function \"%s\" failed: %s"
+msgstr "Perl関数\"%s\"の作成に失敗しました: %s"
+
+#: plperl.c:1134 plperl.c:1192
+#, c-format
+msgid "error from Perl function \"%s\": %s"
+msgstr "Perl関数\"%s\"でエラーがあります: %s"
+
+#: plperl.c:1240
+msgid "set-valued function called in context that cannot accept a set"
+msgstr "このコンテキストで集合値の関数は集合を受け付けられません"
+
+#: plperl.c:1283
+msgid ""
+"set-returning PL/Perl function must return reference to array or use "
+"return_next"
+msgstr "集合を返すPL/Perl関数は配列への参照を返す、または、return_nextを使用する必要があります"
+
+#: plperl.c:1316
+msgid "composite-returning PL/Perl function must return reference to hash"
+msgstr "複合型を返すPL/Perl関数はハッシュへの参照を返す必要があります"
+
+#: plperl.c:1325
+msgid ""
+"function returning record called in context that cannot accept type record"
+msgstr "レコード型を受け付けられないコンテキストでレコードを返す関数が呼び出されました"
+
+#: plperl.c:1441
+msgid "ignoring modified row in DELETE trigger"
+msgstr "DELETEトリガにて変更された行を無視します"
+
+#: plperl.c:1449
+msgid ""
+"result of PL/Perl trigger function must be undef, \"SKIP\", or \"MODIFY\""
+msgstr "PL/Perlトリガ関数の結果は\"SKIP\"または\"MODIFY\"でなければなりません"
+
+#: plperl.c:1549
+msgid "out of memory"
+msgstr "メモリ不足です"
+
+#: plperl.c:1606
+msgid "trigger functions can only be called as triggers"
+msgstr "トリガー関数はトリガーとしてのみコールできます"
+
+#: plperl.c:1899
+msgid "cannot use return_next in a non-SETOF function"
+msgstr "SETOF関数以外ではreturn_nextを使用することはできません"
+
+#: plperl.c:1905
+msgid ""
+"SETOF-composite-returning PL/Perl function must call return_next with "
+"reference to hash"
+msgstr "複合型のSETOFを返すPL/Perl関数はハッシュへの参照を持つreturn_nextを呼び出さなければなりません"
diff --git a/src/pl/plperl/po/pt_BR.po b/src/pl/plperl/po/pt_BR.po
index 8ec8ade5f86..2e6a5af05f4 100644
--- a/src/pl/plperl/po/pt_BR.po
+++ b/src/pl/plperl/po/pt_BR.po
@@ -63,10 +63,11 @@ msgid ""
"set-returning PL/Perl function must return reference to array or use "
"return_next"
msgstr ""
+"funçao PL/Perl que retorna conjunto deve retornar referência para matriz ou usar return_next"
#: plperl.c:1316
msgid "composite-returning PL/Perl function must return reference to hash"
-msgstr ""
+msgstr "função que retorna tipo composto deve retornar referência a um hash"
#: plperl.c:1325
msgid ""
@@ -101,3 +102,4 @@ msgid ""
"SETOF-composite-returning PL/Perl function must call return_next with "
"reference to hash"
msgstr ""
+"função PL/Perl que retorna um conjunto de tipo composto deve chamar return_next com referência a um hash"
diff --git a/src/pl/plpgsql/src/po/de.po b/src/pl/plpgsql/src/po/de.po
index 03b0a81c416..d760b65c516 100644
--- a/src/pl/plpgsql/src/po/de.po
+++ b/src/pl/plpgsql/src/po/de.po
@@ -11,13 +11,14 @@ msgid ""
msgstr ""
"Project-Id-Version: PostgreSQL 8.4\n"
"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
-"POT-Creation-Date: 2009-03-23 23:22+0000\n"
-"PO-Revision-Date: 2009-03-24 09:38+0200\n"
+"POT-Creation-Date: 2009-06-10 21:07+0000\n"
+"PO-Revision-Date: 2009-06-11 01:27+0300\n"
"Last-Translator: Peter Eisentraut <peter_e@gmx.net>\n"
"Language-Team: German <peter_e@gmx.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: pl_comp.c:418 pl_handler.c:177
#, c-format
@@ -109,45 +110,47 @@ msgstr ""
"konnte den tatsächlichen Argumenttyp der polymorphischen Funktion »%s« nicht "
"ermitteln"
-#: pl_exec.c:234 pl_exec.c:505
+#: pl_exec.c:235 pl_exec.c:505
msgid "during initialization of execution state"
msgstr "während der Initialisierung des Ausführungszustandes"
-#: pl_exec.c:241 pl_exec.c:632
+#: pl_exec.c:242 pl_exec.c:632
msgid "while storing call arguments into local variables"
msgstr ""
-#: pl_exec.c:296 pl_exec.c:643
+#: pl_exec.c:297 pl_exec.c:643
msgid "during function entry"
msgstr "während des Eintritts in die Funktion"
-#: pl_exec.c:327 pl_exec.c:674
+#: pl_exec.c:328 pl_exec.c:674
msgid "CONTINUE cannot be used outside a loop"
msgstr "CONTINUE kann nicht außerhalb einer Schleife verwendet werden"
-#: pl_exec.c:331 pl_exec.c:678
+#: pl_exec.c:332 pl_exec.c:678
msgid "RAISE without parameters cannot be used outside an exception handler"
-msgstr "RAISE ohne Parameter kann nicht außerhalb einer Ausnahmebehandlung verwendet werden"
+msgstr ""
+"RAISE ohne Parameter kann nicht außerhalb einer Ausnahmebehandlung verwendet "
+"werden"
-#: pl_exec.c:335
+#: pl_exec.c:336
msgid "control reached end of function without RETURN"
msgstr ""
-#: pl_exec.c:342
+#: pl_exec.c:343
msgid "while casting return value to function's return type"
msgstr ""
-#: pl_exec.c:355 pl_exec.c:2351
+#: pl_exec.c:356 pl_exec.c:2351
msgid "set-valued function called in context that cannot accept a set"
msgstr ""
"Funktion mit Mengenergebnis in einem Zusammenhang aufgerufen, der keine "
"Mengenergebnisse verarbeiten kann"
-#: pl_exec.c:390
+#: pl_exec.c:391
msgid "returned record type does not match expected record type"
msgstr ""
-#: pl_exec.c:446 pl_exec.c:686
+#: pl_exec.c:447 pl_exec.c:686
msgid "during function exit"
msgstr "während des Verlassens der Funktion"
@@ -162,49 +165,53 @@ msgstr "Triggerprozedur kann keine Ergebnismenge zurückgeben"
#: pl_exec.c:709
msgid ""
"returned row structure does not match the structure of the triggering table"
-msgstr "zurückgegebene Zeilenstruktur stimmt nicht mit der Struktur der Tabelle, die den Trigger ausgelöst hat, überein"
+msgstr ""
+"zurückgegebene Zeilenstruktur stimmt nicht mit der Struktur der Tabelle, die "
+"den Trigger ausgelöst hat, überein"
#. translator: last %s is a phrase such as "during statement block local variable initialization"
-#: pl_exec.c:769
+#: pl_exec.c:768
#, c-format
msgid "PL/pgSQL function \"%s\" line %d %s"
msgstr "PL/pgSQL-Funktion »%s« Zeile %d %s"
#. translator: last %s is a phrase such as "while storing call arguments into local variables"
-#: pl_exec.c:777
+#: pl_exec.c:776
#, c-format
msgid "PL/pgSQL function \"%s\" %s"
msgstr "PL/pgSQL-Funktion »%s« %s"
#. translator: last %s is a plpgsql statement type name
-#: pl_exec.c:785
+#: pl_exec.c:784
#, c-format
msgid "PL/pgSQL function \"%s\" line %d at %s"
msgstr "PL/pgSQL-Funktion »%s« Zeile %d bei %s"
-#: pl_exec.c:791
+#: pl_exec.c:790
#, c-format
msgid "PL/pgSQL function \"%s\""
msgstr "PL/pgSQL-Funktion »%s«"
-#: pl_exec.c:900
+#: pl_exec.c:899
msgid "during statement block local variable initialization"
msgstr ""
-#: pl_exec.c:942
+#: pl_exec.c:941
#, c-format
msgid "variable \"%s\" declared NOT NULL cannot default to NULL"
-msgstr "Variable »%s« ist als NOT NULL deklariert und kann daher nicht den Ausgangswert NULL haben"
+msgstr ""
+"Variable »%s« ist als NOT NULL deklariert und kann daher nicht den "
+"Ausgangswert NULL haben"
-#: pl_exec.c:990
+#: pl_exec.c:987
msgid "during statement block entry"
msgstr ""
-#: pl_exec.c:1011
+#: pl_exec.c:1008
msgid "during statement block exit"
msgstr ""
-#: pl_exec.c:1053
+#: pl_exec.c:1051
msgid "during exception cleanup"
msgstr ""
@@ -245,7 +252,7 @@ msgstr "einem Cursor ohne Argumente wurden Argumente übergeben"
msgid "arguments required for cursor"
msgstr "Cursor benötigt Argumente"
-#: pl_exec.c:2144 gram.y:2404
+#: pl_exec.c:2144 gram.y:2419
msgid "cannot use RETURN NEXT in a non-SETOF function"
msgstr ""
"RETURN NEXT kann nur in einer Funktion mit SETOF-Rückgabetyp verwendet werden"
@@ -254,12 +261,12 @@ msgstr ""
msgid "wrong result type supplied in RETURN NEXT"
msgstr ""
-#: pl_exec.c:2191 pl_exec.c:3606 pl_exec.c:3898 pl_exec.c:3937
+#: pl_exec.c:2191 pl_exec.c:3601 pl_exec.c:3893 pl_exec.c:3932
#, c-format
msgid "record \"%s\" is not assigned yet"
msgstr ""
-#: pl_exec.c:2193 pl_exec.c:3608 pl_exec.c:3900 pl_exec.c:3939
+#: pl_exec.c:2193 pl_exec.c:3603 pl_exec.c:3895 pl_exec.c:3934
msgid "The tuple structure of a not-yet-assigned record is indeterminate."
msgstr ""
@@ -271,7 +278,7 @@ msgstr ""
msgid "RETURN NEXT must have a parameter"
msgstr "RETURN NEXT muss einen Parameter haben"
-#: pl_exec.c:2285 gram.y:2451
+#: pl_exec.c:2285 gram.y:2466
msgid "cannot use RETURN QUERY in a non-SETOF function"
msgstr ""
"RETURN QUERY kann nur in einer Funktion mit SETOF-Rückgabetyp verwendet "
@@ -298,7 +305,7 @@ msgstr "Option einer RAISE-Anweisung darf nicht NULL sein"
msgid "RAISE option already specified: %s"
msgstr "RAISE-Option bereits angegeben: %s"
-#: pl_exec.c:2537 pl_exec.c:2538 pl_exec.c:5131 pl_exec.c:5136 pl_exec.c:5145
+#: pl_exec.c:2537 pl_exec.c:2538 pl_exec.c:5127 pl_exec.c:5132 pl_exec.c:5141
#, c-format
msgid "%s"
msgstr "%s"
@@ -338,7 +345,7 @@ msgstr ""
"Wenn Sie die Ergebnisse eines SELECT verwerfen wollen, verwenden Sie "
"stattdessen PERFORM."
-#: pl_exec.c:2913 pl_exec.c:3163 pl_exec.c:5399
+#: pl_exec.c:2913 pl_exec.c:3163 pl_exec.c:5419
msgid "query string argument of EXECUTE is null"
msgstr ""
@@ -346,12 +353,12 @@ msgstr ""
msgid "EXECUTE of SELECT ... INTO is not implemented"
msgstr "EXECUTE von SELECT ... INTO ist nicht implementiert"
-#: pl_exec.c:3297 pl_exec.c:3393
+#: pl_exec.c:3297 pl_exec.c:3388
#, c-format
msgid "cursor variable \"%s\" is null"
msgstr "Cursorvariable »%s« ist NULL"
-#: pl_exec.c:3304 pl_exec.c:3400
+#: pl_exec.c:3304 pl_exec.c:3395
#, c-format
msgid "cursor \"%s\" does not exist"
msgstr "Cursor »%s« existiert nicht"
@@ -360,79 +367,81 @@ msgstr "Cursor »%s« existiert nicht"
msgid "relative or absolute cursor position is null"
msgstr "relative oder absolute Cursorposition ist NULL"
-#: pl_exec.c:3460
+#: pl_exec.c:3455
#, c-format
msgid "null value cannot be assigned to variable \"%s\" declared NOT NULL"
msgstr ""
"NULL-Wert kann der Variable »%s« nicht zugewiesen werden, weil sie als NOT "
"NULL deklariert ist"
-#: pl_exec.c:3505
+#: pl_exec.c:3500
msgid "cannot assign non-composite value to a row variable"
msgstr ""
-#: pl_exec.c:3547
+#: pl_exec.c:3542
msgid "cannot assign non-composite value to a record variable"
msgstr ""
-#: pl_exec.c:3619 pl_exec.c:3944
+#: pl_exec.c:3614 pl_exec.c:3939
#, c-format
msgid "record \"%s\" has no field \"%s\""
msgstr "Record »%s« hat kein Feld »%s«"
-#: pl_exec.c:3717
+#: pl_exec.c:3712
#, c-format
msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
msgstr "Anzahl der Arraydimensionen (%d) überschreitet erlaubtes Maximum (%d)"
-#: pl_exec.c:3731
+#: pl_exec.c:3726
msgid "subscripted object is not an array"
msgstr "Objekt mit Arrayindex ist kein Array"
-#: pl_exec.c:3754
+#: pl_exec.c:3749
msgid "array subscript in assignment must not be null"
msgstr "Arrayindex in Zuweisung darf nicht NULL sein"
-#: pl_exec.c:3860 pl_exec.c:3885 pl_exec.c:3922
+#: pl_exec.c:3855 pl_exec.c:3880 pl_exec.c:3917
#, c-format
msgid "type of \"%s\" does not match that when preparing the plan"
msgstr ""
-#: pl_exec.c:3951
+#: pl_exec.c:3946
#, c-format
msgid "type of \"%s.%s\" does not match that when preparing the plan"
msgstr ""
-#: pl_exec.c:3976
+#: pl_exec.c:3971
#, c-format
msgid "type of tgargv[%d] does not match that when preparing the plan"
msgstr ""
-#: pl_exec.c:4069
+#: pl_exec.c:4064
#, c-format
msgid "query \"%s\" did not return data"
msgstr "Anfrage »%s« hat keine Daten zurückgegeben"
-#: pl_exec.c:4086
+#: pl_exec.c:4081
#, c-format
msgid "query \"%s\" returned more than one row"
msgstr "Anfrage »%s« hat mehr als eine Zeile zurückgegeben"
-#: pl_exec.c:4091
+#: pl_exec.c:4086
#, c-format
-msgid "query \"%s\" returned %d columns"
-msgstr "Anfrage »%s« hat %d Spalten zurückgegeben"
+msgid "query \"%s\" returned %d column"
+msgid_plural "query \"%s\" returned %d columns"
+msgstr[0] "Anfrage »%s« hat %d Spalte zurückgegeben"
+msgstr[1] "Anfrage »%s« hat %d Spalten zurückgegeben"
-#: pl_exec.c:4149
+#: pl_exec.c:4147
#, c-format
msgid "query \"%s\" is not a SELECT"
msgstr "Anfrage »%s« ist kein SELECT"
-#: pl_exec.c:5126
+#: pl_exec.c:5122
msgid "N/A (dropped column)"
msgstr "k.A. (gelöschte Spalte)"
-#: pl_exec.c:5137
+#: pl_exec.c:5133
#, c-format
msgid ""
"Number of returned columns (%d) does not match expected column count (%d)."
@@ -440,135 +449,139 @@ msgstr ""
"Die Anzahl der zurückgegebenen Spalten (%d) stimmt nicht mit der erwarteten "
"Spaltenanzahl (%d) überein."
-#: pl_exec.c:5146
+#: pl_exec.c:5142
#, c-format
msgid "Returned type %s does not match expected type %s in column \"%s\"."
msgstr ""
"Der zurückgegebene Typ %s stimmt nicht mit dem erwarteten Typ %s in Spalte »%"
"s« überein."
-#: gram.y:359
+#: gram.y:355
msgid "row or record variable cannot be CONSTANT"
msgstr "Zeilen- oder Record-Variable kann nicht CONSTANT sein"
-#: gram.y:368
+#: gram.y:364
msgid "row or record variable cannot be NOT NULL"
msgstr "Zeilen- oder Record-Variable kann nicht NOT NULL sein"
-#: gram.y:377
+#: gram.y:373
msgid "default value for row or record variable is not supported"
msgstr ""
-#: gram.y:526
+#: gram.y:522
msgid "only positional parameters can be aliased"
msgstr ""
-#: gram.y:536
+#: gram.y:532
#, c-format
msgid "function has no parameter \"%s\""
msgstr "Funktion hat keinen Parameter »%s«"
-#: gram.y:746 gram.y:750 gram.y:754
+#: gram.y:560 gram.y:564 gram.y:568
+msgid "duplicate declaration"
+msgstr "doppelte Deklaration"
+
+#: gram.y:761 gram.y:765 gram.y:769
msgid "expected an integer variable"
-msgstr ""
+msgstr "ganzzahlige Variable erwartet"
-#: gram.y:1009 gram.y:1198
+#: gram.y:1024 gram.y:1213
msgid ""
"loop variable of loop over rows must be a record or row variable or list of "
"scalar variables"
msgstr ""
-#: gram.y:1046
+#: gram.y:1061
msgid "cursor FOR loop must have only one target variable"
msgstr ""
-#: gram.y:1058
+#: gram.y:1073
msgid "cursor FOR loop must use a bound cursor variable"
msgstr ""
-#: gram.y:1134
+#: gram.y:1149
msgid "integer FOR loop must have only one target variable"
msgstr ""
-#: gram.y:1167
+#: gram.y:1182
msgid "cannot specify REVERSE in query FOR loop"
msgstr ""
-#: gram.y:1258 gram.y:2616
+#: gram.y:1273 gram.y:2631
#, c-format
msgid "\"%s\" is not a scalar variable"
msgstr "»%s« ist keine skalare Variable"
-#: gram.y:1311 gram.y:1351 gram.y:1395 gram.y:2172 gram.y:2263 gram.y:2881
+#: gram.y:1326 gram.y:1366 gram.y:1410 gram.y:2187 gram.y:2278 gram.y:2938
msgid "unexpected end of function definition"
msgstr "unerwartetes Ende der Funktionsdefinition"
-#: gram.y:1415 gram.y:1437 gram.y:1451 gram.y:1459 gram.y:1520 gram.y:1607
-#: gram.y:1776 gram.y:1780
+#: gram.y:1430 gram.y:1452 gram.y:1466 gram.y:1474 gram.y:1535 gram.y:1622
+#: gram.y:1787
msgid "syntax error"
msgstr "Syntaxfehler"
-#: gram.y:1441 gram.y:1443 gram.y:1784 gram.y:1786
+#: gram.y:1456 gram.y:1458 gram.y:1791 gram.y:1793
msgid "invalid SQLSTATE code"
msgstr "ungültiger SQLSTATE-Code"
-#: gram.y:1571 gram.y:2565 gram.y:2810
+#: gram.y:1586 gram.y:2580 gram.y:2867
#, c-format
msgid "syntax error at \"%s\""
msgstr "Syntaxfehler bei »%s«"
-#: gram.y:1573
+#: gram.y:1588
msgid "Expected \"FOR\", to open a reference cursor."
msgstr ""
-#: gram.y:1660
+#: gram.y:1675
msgid "cursor variable must be a simple variable"
msgstr "Cursorvariable muss eine einfache Variable sein"
-#: gram.y:1667
+#: gram.y:1682
#, c-format
msgid "variable \"%s\" must be of type cursor or refcursor"
msgstr "Variable »%s« muss Typ cursor oder refcursor haben"
-#: gram.y:1674 gram.y:1678 gram.y:1682
+#: gram.y:1689 gram.y:1693 gram.y:1697
msgid "expected a cursor or refcursor variable"
msgstr "Variable mit Typ cursor oder refcursor erwartet"
-#: gram.y:1907 gram.y:2978
+#: gram.y:1922 gram.y:3035
msgid "too many variables specified in SQL statement"
msgstr ""
-#: gram.y:1992 gram.y:2002 gram.y:2095
+#: gram.y:2007 gram.y:2017 gram.y:2110
msgid "mismatched parentheses"
msgstr ""
-#: gram.y:2007
+#: gram.y:2022
#, c-format
msgid "missing \"%s\" at end of SQL expression"
msgstr ""
-#: gram.y:2012
+#: gram.y:2027
#, c-format
msgid "missing \"%s\" at end of SQL statement"
msgstr ""
-#: gram.y:2097
+#: gram.y:2112
msgid "incomplete data type declaration"
msgstr "unvollständige Datentypdeklaration"
-#: gram.y:2122
+#: gram.y:2137
msgid "missing data type declaration"
msgstr "fehlende Datentypdeklaration"
-#: gram.y:2177
+#: gram.y:2192
msgid "INTO specified more than once"
msgstr "INTO mehr als einmal angegeben"
-#: gram.y:2326
+#: gram.y:2341
msgid "expected FROM or IN"
msgstr "FROM oder IN erwartet"
-#: gram.y:2347
+#: gram.y:2362
msgid ""
"RETURN cannot have a parameter in function returning set; use RETURN NEXT or "
"RETURN QUERY"
@@ -576,88 +589,93 @@ msgstr ""
"RETURN kann keinen Parameter haben in einer Funktion mit Mengenergebnis; "
"verwenden Sie RETURN NEXT oder RETURN QUERY"
-#: gram.y:2353
+#: gram.y:2368
msgid "RETURN cannot have a parameter in function with OUT parameters"
msgstr ""
"RETURN kann keinen Parameter haben in einer Funktion mit OUT-Parametern"
-#: gram.y:2359
+#: gram.y:2374
msgid "RETURN cannot have a parameter in function returning void"
msgstr ""
"RETURN kann keinen Parameter haben in einer Funktion, die »void« zurückgibt"
-#: gram.y:2378 gram.y:2382
+#: gram.y:2393 gram.y:2397
msgid "RETURN must specify a record or row variable in function returning row"
msgstr ""
-#: gram.y:2415
+#: gram.y:2430
msgid "RETURN NEXT cannot have a parameter in function with OUT parameters"
msgstr ""
"RETURN NEXT kann keinen Parameter haben in einer Funktion mit OUT-Parametern"
-#: gram.y:2431 gram.y:2435
+#: gram.y:2446 gram.y:2450
msgid ""
"RETURN NEXT must specify a record or row variable in function returning row"
msgstr ""
-#: gram.y:2498
+#: gram.y:2513
#, c-format
msgid "\"%s\" is declared CONSTANT"
msgstr "»%s« wurde als CONSTANT deklariert"
-#: gram.y:2515
+#: gram.y:2530
msgid "cannot assign to tg_argv"
msgstr ""
-#: gram.y:2566
+#: gram.y:2581
msgid ""
"Expected record variable, row variable, or list of scalar variables "
"following INTO."
msgstr ""
-#: gram.y:2600
+#: gram.y:2615
msgid "too many INTO variables specified"
msgstr "zu viele INTO-Variablen angegeben"
-#: gram.y:2734
+#: gram.y:2749
#, c-format
msgid "SQL statement in PL/PgSQL function \"%s\" near line %d"
msgstr "SQL-Anweisung in PL/pgSQL-Funktion »%s« nahe Zeile %d"
-#: gram.y:2748
+#: gram.y:2792
+#, c-format
+msgid "string literal in PL/PgSQL function \"%s\" near line %d"
+msgstr "Zeichenkettenkonstante in PL/pgSQL-Funktion »%s« nahe Zeile %d"
+
+#: gram.y:2805
msgid "label does not exist"
msgstr "Label existiert nicht"
-#: gram.y:2762
+#: gram.y:2819
#, c-format
msgid "end label \"%s\" specified for unlabelled block"
msgstr ""
-#: gram.y:2771
+#: gram.y:2828
#, c-format
msgid "end label \"%s\" differs from block's label \"%s\""
msgstr ""
-#: gram.y:2801
+#: gram.y:2858
#, c-format
msgid "cursor \"%s\" has no arguments"
msgstr "Cursor »%s« hat keine Argumente"
-#: gram.y:2823
+#: gram.y:2880
#, c-format
msgid "cursor \"%s\" has arguments"
msgstr "Cursor »%s« hat Argumente"
-#: gram.y:2861
+#: gram.y:2918
msgid "expected \")\""
msgstr "»)« erwartet"
-#: gram.y:2898
+#: gram.y:2955
#, c-format
msgid "unrecognized RAISE statement option \"%s\""
msgstr "unbekannte Option »%s« für RAISE-Anweisung"
-#: gram.y:2903
+#: gram.y:2960
msgid "syntax error, expected \"=\""
msgstr "Syntaxfehler, »=« erwartet"
@@ -708,30 +726,30 @@ msgstr "EXECUTE-Anweisung"
msgid "FOR over EXECUTE statement"
msgstr "FOR-über-EXECUTE-Anweisung"
-#: scan.l:232
+#: scan.l:263
msgid "unterminated quoted identifier"
msgstr "Bezeichner in Anführungszeichen nicht abgeschlossen"
-#: scan.l:257
+#: scan.l:306
msgid "unterminated /* comment"
msgstr "/*-Kommentar nicht abgeschlossen"
-#: scan.l:296
+#: scan.l:342
msgid "unterminated quoted string"
msgstr "Zeichenkette nicht abgeschlossen"
-#: scan.l:333
+#: scan.l:382
msgid "unterminated dollar-quoted string"
msgstr "Dollar-Quotes nicht abgeschlossen"
#. translator: %s is typically "syntax error"
-#: scan.l:395
+#: scan.l:445
#, c-format
msgid "%s at end of input"
-msgstr "Fehler »%s« am Ende der Eingabe"
+msgstr "%s am Ende der Eingabe"
#. translator: first %s is typically "syntax error"
-#: scan.l:404
+#: scan.l:454
#, c-format
msgid "%s at or near \"%s\""
-msgstr "Fehler »%s« bei »%s«"
+msgstr "%s bei »%s«"
diff --git a/src/pl/plpgsql/src/po/es.po b/src/pl/plpgsql/src/po/es.po
index 914867f82d3..4234dbba3cd 100644
--- a/src/pl/plpgsql/src/po/es.po
+++ b/src/pl/plpgsql/src/po/es.po
@@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PostgreSQL 8.4\n"
"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
-"POT-Creation-Date: 2009-04-14 03:10+0000\n"
-"PO-Revision-Date: 2009-04-14 11:21-0400\n"
+"POT-Creation-Date: 2009-06-10 21:07+0000\n"
+"PO-Revision-Date: 2009-06-10 17:25-0400\n"
"Last-Translator: Álvaro Herrera <alvherre@alvh.no-ip.org>\n"
"Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@postgresql.org>\n"
"MIME-Version: 1.0\n"
@@ -139,7 +139,7 @@ msgstr ""
"mientras se hacía conversión del valor de retorno al tipo de retorno de la "
"función"
-#: pl_exec.c:356 pl_exec.c:2347
+#: pl_exec.c:356 pl_exec.c:2351
msgid "set-valued function called in context that cannot accept a set"
msgstr ""
"se llamó una función que retorna un conjunto en un contexto que no puede "
@@ -215,232 +215,232 @@ msgstr "durante la salida del bloque de sentencias"
msgid "during exception cleanup"
msgstr "durante la finalización por excepción"
-#: pl_exec.c:1513
+#: pl_exec.c:1517
msgid "case not found"
msgstr "caso no encontrado"
-#: pl_exec.c:1514
+#: pl_exec.c:1518
msgid "CASE statement is missing ELSE part."
msgstr "A la sentencia CASE le falta la parte ELSE."
-#: pl_exec.c:1670
+#: pl_exec.c:1674
msgid "lower bound of FOR loop cannot be null"
msgstr "el límite inferior de un ciclo FOR no puede ser null"
-#: pl_exec.c:1685
+#: pl_exec.c:1689
msgid "upper bound of FOR loop cannot be null"
msgstr "el límite superior de un ciclo FOR no puede ser null"
-#: pl_exec.c:1702
+#: pl_exec.c:1706
msgid "BY value of FOR loop cannot be null"
msgstr "el valor BY de un ciclo FOR no puede ser null"
-#: pl_exec.c:1708
+#: pl_exec.c:1712
msgid "BY value of FOR loop must be greater than zero"
msgstr "el valor BY de un ciclo FOR debe ser mayor que cero"
-#: pl_exec.c:1880 pl_exec.c:3118
+#: pl_exec.c:1884 pl_exec.c:3122
#, c-format
msgid "cursor \"%s\" already in use"
msgstr "el cursor «%s» ya está en uso"
-#: pl_exec.c:1903 pl_exec.c:3212
+#: pl_exec.c:1907 pl_exec.c:3216
msgid "arguments given for cursor without arguments"
msgstr "se dieron argumentos a un cursor sin argumentos"
-#: pl_exec.c:1922 pl_exec.c:3231
+#: pl_exec.c:1926 pl_exec.c:3235
msgid "arguments required for cursor"
msgstr "se requieren argumentos para el cursor"
-#: pl_exec.c:2140 gram.y:2404
+#: pl_exec.c:2144 gram.y:2419
msgid "cannot use RETURN NEXT in a non-SETOF function"
msgstr "no se puede usar RETURN NEXT en una función que no es SETOF"
-#: pl_exec.c:2164 pl_exec.c:2224
+#: pl_exec.c:2168 pl_exec.c:2228
msgid "wrong result type supplied in RETURN NEXT"
msgstr "se pasó un tipo incorrecto de resultado a RETURN NEXT"
-#: pl_exec.c:2187 pl_exec.c:3597 pl_exec.c:3889 pl_exec.c:3928
+#: pl_exec.c:2191 pl_exec.c:3601 pl_exec.c:3893 pl_exec.c:3932
#, c-format
msgid "record \"%s\" is not assigned yet"
msgstr "el registro «%s» no ha sido asignado aún"
-#: pl_exec.c:2189 pl_exec.c:3599 pl_exec.c:3891 pl_exec.c:3930
+#: pl_exec.c:2193 pl_exec.c:3603 pl_exec.c:3895 pl_exec.c:3934
msgid "The tuple structure of a not-yet-assigned record is indeterminate."
msgstr ""
"La estructura de fila de un registro aún no asignado no está determinado."
-#: pl_exec.c:2192 pl_exec.c:2205
+#: pl_exec.c:2196 pl_exec.c:2209
msgid "wrong record type supplied in RETURN NEXT"
msgstr "tipo de registro incorrecto suplantado en RETURN NEXT"
-#: pl_exec.c:2249
+#: pl_exec.c:2253
msgid "RETURN NEXT must have a parameter"
msgstr "RETURN NEXT debe tener un parámetro"
-#: pl_exec.c:2281 gram.y:2451
+#: pl_exec.c:2285 gram.y:2466
msgid "cannot use RETURN QUERY in a non-SETOF function"
msgstr ""
"no se puede usar RETURN QUERY en una función que no ha sido declarada SETOF"
-#: pl_exec.c:2300
+#: pl_exec.c:2304
msgid "structure of query does not match function result type"
msgstr ""
"la estructura de la consulta con concuerda con el tipo del resultado de la "
"función"
-#: pl_exec.c:2417
+#: pl_exec.c:2421
msgid "too few parameters specified for RAISE"
msgstr "se especificaron muy pocos parámetros a RAISE"
-#: pl_exec.c:2443
+#: pl_exec.c:2447
msgid "too many parameters specified for RAISE"
msgstr "se especificaron demasiados parámetros a RAISE"
-#: pl_exec.c:2463
+#: pl_exec.c:2467
msgid "RAISE statement option cannot be null"
msgstr "la opción de sentencia en RAISE no puede ser null"
-#: pl_exec.c:2473 pl_exec.c:2482 pl_exec.c:2490 pl_exec.c:2498
+#: pl_exec.c:2477 pl_exec.c:2486 pl_exec.c:2494 pl_exec.c:2502
#, c-format
msgid "RAISE option already specified: %s"
msgstr "la opción de RAISE ya se especificó: %s"
-#: pl_exec.c:2533 pl_exec.c:2534 pl_exec.c:5121 pl_exec.c:5126 pl_exec.c:5135
+#: pl_exec.c:2537 pl_exec.c:2538 pl_exec.c:5127 pl_exec.c:5132 pl_exec.c:5141
#, c-format
msgid "%s"
msgstr "%s"
-#: pl_exec.c:2676 pl_exec.c:2982
+#: pl_exec.c:2680 pl_exec.c:2986
msgid "cannot COPY to/from client in PL/pgSQL"
msgstr "no se puede ejecutar COPY desde/a un cliente en PL/pgSQL"
-#: pl_exec.c:2680 pl_exec.c:2986
+#: pl_exec.c:2684 pl_exec.c:2990
msgid "cannot begin/end transactions in PL/pgSQL"
msgstr "no se puede terminar/iniciar transacciones en PL/pgSQL"
-#: pl_exec.c:2681 pl_exec.c:2987
+#: pl_exec.c:2685 pl_exec.c:2991
msgid "Use a BEGIN block with an EXCEPTION clause instead."
msgstr "Utilice un bloque BEGIN con una cláusula EXCEPTION."
-#: pl_exec.c:2832 pl_exec.c:3011
+#: pl_exec.c:2836 pl_exec.c:3015
msgid "INTO used with a command that cannot return data"
msgstr "INTO es utilizado con un comando uqe no puede retornar datos"
-#: pl_exec.c:2852 pl_exec.c:3031
+#: pl_exec.c:2856 pl_exec.c:3035
msgid "query returned no rows"
msgstr "la consulta no regresó renglones"
-#: pl_exec.c:2861 pl_exec.c:3040
+#: pl_exec.c:2865 pl_exec.c:3044
msgid "query returned more than one row"
msgstr "la consulta regresó más de un renglón"
-#: pl_exec.c:2875
+#: pl_exec.c:2879
msgid "query has no destination for result data"
msgstr "la consulta no tiene un destino para los datos de resultado"
-#: pl_exec.c:2876
+#: pl_exec.c:2880
msgid "If you want to discard the results of a SELECT, use PERFORM instead."
msgstr "Si quiere descartar los resultados de un SELECT, utilice PERFORM."
-#: pl_exec.c:2909 pl_exec.c:3159 pl_exec.c:5413
+#: pl_exec.c:2913 pl_exec.c:3163 pl_exec.c:5419
msgid "query string argument of EXECUTE is null"
msgstr "el argumento de consulta a ejecutar en EXECUTE es null"
-#: pl_exec.c:2974
+#: pl_exec.c:2978
msgid "EXECUTE of SELECT ... INTO is not implemented"
msgstr "no está implementado EXECUTE de un SELECT ... INTO"
-#: pl_exec.c:3293 pl_exec.c:3384
+#: pl_exec.c:3297 pl_exec.c:3388
#, c-format
msgid "cursor variable \"%s\" is null"
msgstr "variable cursor «%s» es null"
-#: pl_exec.c:3300 pl_exec.c:3391
+#: pl_exec.c:3304 pl_exec.c:3395
#, c-format
msgid "cursor \"%s\" does not exist"
msgstr "no existe el cursor «%s»"
-#: pl_exec.c:3314
+#: pl_exec.c:3318
msgid "relative or absolute cursor position is null"
msgstr "la posición relativa o absoluta del cursor es null"
-#: pl_exec.c:3451
+#: pl_exec.c:3455
#, c-format
msgid "null value cannot be assigned to variable \"%s\" declared NOT NULL"
msgstr ""
"no puede asignarse un valor null a la variable «%s» que fue declarada NOT "
"NULLNULL"
-#: pl_exec.c:3496
+#: pl_exec.c:3500
msgid "cannot assign non-composite value to a row variable"
msgstr "no se puede asignar un valor no compuesto a una variable de tipo fila"
-#: pl_exec.c:3538
+#: pl_exec.c:3542
msgid "cannot assign non-composite value to a record variable"
msgstr "no se puede asignar un valor no compuesto a un registro variable"
-#: pl_exec.c:3610 pl_exec.c:3935
+#: pl_exec.c:3614 pl_exec.c:3939
#, c-format
msgid "record \"%s\" has no field \"%s\""
msgstr "el registro «%s» no tiene un campo «%s»"
-#: pl_exec.c:3708
+#: pl_exec.c:3712
#, c-format
msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
msgstr ""
"el número de dimensiones del array (%d) excede el máximo permitido (%d)"
-#: pl_exec.c:3722
+#: pl_exec.c:3726
msgid "subscripted object is not an array"
msgstr "el objeto al que se le puso un subíndice no es un array"
-#: pl_exec.c:3745
+#: pl_exec.c:3749
msgid "array subscript in assignment must not be null"
msgstr "subíndice de array en asignación no puede ser nulo"
-#: pl_exec.c:3851 pl_exec.c:3876 pl_exec.c:3913
+#: pl_exec.c:3855 pl_exec.c:3880 pl_exec.c:3917
#, c-format
msgid "type of \"%s\" does not match that when preparing the plan"
msgstr "tipo de «%s» no concuerda consigo cuando fue preparado el plan"
-#: pl_exec.c:3942
+#: pl_exec.c:3946
#, c-format
msgid "type of \"%s.%s\" does not match that when preparing the plan"
msgstr "tipo de «%s».«%s» no concuerda condigo cuando fue preparado el plan"
-#: pl_exec.c:3967
+#: pl_exec.c:3971
#, c-format
msgid "type of tgargv[%d] does not match that when preparing the plan"
msgstr "tipo de tgarv[%d] no concuerda condigo cuando fue preparado el plan"
-#: pl_exec.c:4060
+#: pl_exec.c:4064
#, c-format
msgid "query \"%s\" did not return data"
msgstr "la consulta «%s» no retornó datos"
-#: pl_exec.c:4077
+#: pl_exec.c:4081
#, c-format
msgid "query \"%s\" returned more than one row"
msgstr "la consulta «%s» retornó más de un registro"
-#: pl_exec.c:4082
+#: pl_exec.c:4086
#, c-format
msgid "query \"%s\" returned %d column"
msgid_plural "query \"%s\" returned %d columns"
msgstr[0] "la consulta «%s» retornó una columna"
msgstr[1] "la consulta «%s» retornó %d columnas"
-#: pl_exec.c:4141
+#: pl_exec.c:4147
#, c-format
msgid "query \"%s\" is not a SELECT"
msgstr "la consulta «%s» no es una orden SELECT"
-#: pl_exec.c:5116
+#: pl_exec.c:5122
msgid "N/A (dropped column)"
msgstr "N/A (columna eliminada)"
-#: pl_exec.c:5127
+#: pl_exec.c:5133
#, c-format
msgid ""
"Number of returned columns (%d) does not match expected column count (%d)."
@@ -448,38 +448,42 @@ msgstr ""
"El número de columnas retornadas (%d) no coincide con la cantidad esperada "
"de columnas (%d)."
-#: pl_exec.c:5136
+#: pl_exec.c:5142
#, c-format
msgid "Returned type %s does not match expected type %s in column \"%s\"."
msgstr ""
"El tipo retornado %s no coincide con el tipo esperado %s en la columna «%s»."
-#: gram.y:359
+#: gram.y:355
msgid "row or record variable cannot be CONSTANT"
msgstr "fila o registro variable no puede ser CONSTANT"
-#: gram.y:368
+#: gram.y:364
msgid "row or record variable cannot be NOT NULL"
msgstr "fila o registro variable no peude ser NOT NULL"
-#: gram.y:377
+#: gram.y:373
msgid "default value for row or record variable is not supported"
msgstr "valor por defecto de la fila o registro variable no soportado"
-#: gram.y:526
+#: gram.y:522
msgid "only positional parameters can be aliased"
msgstr "solo ls parámetros posicionados pueden tener alias"
-#: gram.y:536
+#: gram.y:532
#, c-format
msgid "function has no parameter \"%s\""
msgstr "la función no tiene un parámetro «%s»"
-#: gram.y:746 gram.y:750 gram.y:754
+#: gram.y:560 gram.y:564 gram.y:568
+msgid "duplicate declaration"
+msgstr "declaración duplicada"
+
+#: gram.y:761 gram.y:765 gram.y:769
msgid "expected an integer variable"
msgstr "se esperaba una variable entera"
-#: gram.y:1009 gram.y:1198
+#: gram.y:1024 gram.y:1213
msgid ""
"loop variable of loop over rows must be a record or row variable or list of "
"scalar variables"
@@ -487,98 +491,98 @@ msgstr ""
"variable de bucle de un bucle sobre filas debe ser un registro o una "
"variable de tipo registro o una lista de variables escalares"
-#: gram.y:1046
+#: gram.y:1061
msgid "cursor FOR loop must have only one target variable"
msgstr "un bucle FOR de un cursor debe tener sólo una variable de destino"
-#: gram.y:1058
+#: gram.y:1073
msgid "cursor FOR loop must use a bound cursor variable"
msgstr "un bucle FOR en torno a un cursor debe usar un cursor enlazado"
-#: gram.y:1134
+#: gram.y:1149
msgid "integer FOR loop must have only one target variable"
msgstr ""
"un bucle FOR de un número entero debe tener sólo una variable de destino"
-#: gram.y:1167
+#: gram.y:1182
msgid "cannot specify REVERSE in query FOR loop"
msgstr "no se puede especificar REVERSE en un bucle FOR de una consulta"
-#: gram.y:1258 gram.y:2616
+#: gram.y:1273 gram.y:2631
#, c-format
msgid "\"%s\" is not a scalar variable"
msgstr "«%s» no es una variable escalar"
-#: gram.y:1311 gram.y:1351 gram.y:1395 gram.y:2172 gram.y:2263 gram.y:2881
+#: gram.y:1326 gram.y:1366 gram.y:1410 gram.y:2187 gram.y:2278 gram.y:2938
msgid "unexpected end of function definition"
msgstr "fin inesperado de la definición de la función"
-#: gram.y:1415 gram.y:1437 gram.y:1451 gram.y:1459 gram.y:1520 gram.y:1607
-#: gram.y:1776 gram.y:1780
+#: gram.y:1430 gram.y:1452 gram.y:1466 gram.y:1474 gram.y:1535 gram.y:1622
+#: gram.y:1787
msgid "syntax error"
msgstr "error de sintaxis"
-#: gram.y:1441 gram.y:1443 gram.y:1784 gram.y:1786
+#: gram.y:1456 gram.y:1458 gram.y:1791 gram.y:1793
msgid "invalid SQLSTATE code"
msgstr "código SQLSTATE no válido"
-#: gram.y:1571 gram.y:2565 gram.y:2810
+#: gram.y:1586 gram.y:2580 gram.y:2867
#, c-format
msgid "syntax error at \"%s\""
msgstr "error de sintaxis en «%s»"
-#: gram.y:1573
+#: gram.y:1588
msgid "Expected \"FOR\", to open a reference cursor."
msgstr "Se esperaba «FOR», para abrir un cursor de referencia."
-#: gram.y:1660
+#: gram.y:1675
msgid "cursor variable must be a simple variable"
msgstr "variable de cursor debe ser una variable simple"
-#: gram.y:1667
+#: gram.y:1682
#, c-format
msgid "variable \"%s\" must be of type cursor or refcursor"
msgstr "la variable «%s» debe ser de tipo cursor o refcursor"
-#: gram.y:1674 gram.y:1678 gram.y:1682
+#: gram.y:1689 gram.y:1693 gram.y:1697
msgid "expected a cursor or refcursor variable"
msgstr "se espera un cursor o una variable de referencia a cursor"
-#: gram.y:1907 gram.y:2978
+#: gram.y:1922 gram.y:3035
msgid "too many variables specified in SQL statement"
msgstr "se especificaron demasiadas variables en la sentencia SQL"
-#: gram.y:1992 gram.y:2002 gram.y:2095
+#: gram.y:2007 gram.y:2017 gram.y:2110
msgid "mismatched parentheses"
msgstr "no coinciden los paréntesis"
-#: gram.y:2007
+#: gram.y:2022
#, c-format
msgid "missing \"%s\" at end of SQL expression"
msgstr "falta «%s» al final de la expresión SQL"
-#: gram.y:2012
+#: gram.y:2027
#, c-format
msgid "missing \"%s\" at end of SQL statement"
msgstr "falta «%s» al final de la sentencia SQL"
-#: gram.y:2097
+#: gram.y:2112
msgid "incomplete data type declaration"
msgstr "declaración de tipo de dato incompleta"
-#: gram.y:2122
+#: gram.y:2137
msgid "missing data type declaration"
msgstr "declaración de tipo de dato faltante"
-#: gram.y:2177
+#: gram.y:2192
msgid "INTO specified more than once"
msgstr "INTO fue especificado más de una vez"
-#: gram.y:2326
+#: gram.y:2341
msgid "expected FROM or IN"
msgstr "se espera FROM o IN"
-#: gram.y:2347
+#: gram.y:2362
msgid ""
"RETURN cannot have a parameter in function returning set; use RETURN NEXT or "
"RETURN QUERY"
@@ -586,43 +590,43 @@ msgstr ""
"RETURN no puede tener un parámetro en una función que retorna un conjunto; "
"use RETURN NEXT o RETURN QUERY"
-#: gram.y:2353
+#: gram.y:2368
msgid "RETURN cannot have a parameter in function with OUT parameters"
msgstr "RETURN no puede tener parámetros en una función con parámetros OUT"
-#: gram.y:2359
+#: gram.y:2374
msgid "RETURN cannot have a parameter in function returning void"
msgstr ""
"RETURN no puede tener un parámetro en una función returnando valor vacío"
-#: gram.y:2378 gram.y:2382
+#: gram.y:2393 gram.y:2397
msgid "RETURN must specify a record or row variable in function returning row"
msgstr ""
"RETURN debe especificar una variable de tipo record o registro en una "
"función que retorna una fila"
-#: gram.y:2415
+#: gram.y:2430
msgid "RETURN NEXT cannot have a parameter in function with OUT parameters"
msgstr ""
"RETURN NEXT no puede tener parámetros en una función con parámetros OUT"
-#: gram.y:2431 gram.y:2435
+#: gram.y:2446 gram.y:2450
msgid ""
"RETURN NEXT must specify a record or row variable in function returning row"
msgstr ""
-"RETURN NEXT debe especificar una variable tipo record o registro en una función que "
-"retorna una fila"
+"RETURN NEXT debe especificar una variable tipo record o registro en una "
+"función que retorna una fila"
-#: gram.y:2498
+#: gram.y:2513
#, c-format
msgid "\"%s\" is declared CONSTANT"
msgstr "«%s» esta declarada como CONSTANT"
-#: gram.y:2515
+#: gram.y:2530
msgid "cannot assign to tg_argv"
msgstr "no se puede asignar a tg_argv"
-#: gram.y:2566
+#: gram.y:2581
msgid ""
"Expected record variable, row variable, or list of scalar variables "
"following INTO."
@@ -630,49 +634,54 @@ msgstr ""
"Se espera una variable registro, variable de tipo fila, o una lista de "
"variables escalares seguido de INTO."
-#: gram.y:2600
+#: gram.y:2615
msgid "too many INTO variables specified"
msgstr "se especificaron demasiadas variables INTO"
-#: gram.y:2734
+#: gram.y:2749
#, c-format
msgid "SQL statement in PL/PgSQL function \"%s\" near line %d"
-msgstr "sentencia SQL en una función PL/PgSQL «%s» cerca de la línea %d"
+msgstr "sentencia SQL en la función PL/PgSQL «%s» cerca de la línea %d"
+
+#: gram.y:2792
+#, c-format
+msgid "string literal in PL/PgSQL function \"%s\" near line %d"
+msgstr "literal de cadena en la función PL/PgSQL «%s» cerca de la línea %d"
-#: gram.y:2748
+#: gram.y:2805
msgid "label does not exist"
msgstr "la etiqueta no existe"
-#: gram.y:2762
+#: gram.y:2819
#, c-format
msgid "end label \"%s\" specified for unlabelled block"
msgstr "etiqueta de término «%s» especificada para un bloque sin etiqueta"
-#: gram.y:2771
+#: gram.y:2828
#, c-format
msgid "end label \"%s\" differs from block's label \"%s\""
msgstr "el nombre de la tabla «%s» difiere del nombre de bloque «%s»"
-#: gram.y:2801
+#: gram.y:2858
#, c-format
msgid "cursor \"%s\" has no arguments"
msgstr "el cursor «%s» no tiene argumentos"
-#: gram.y:2823
+#: gram.y:2880
#, c-format
msgid "cursor \"%s\" has arguments"
msgstr "el cursor «%s» tiene argumentos"
-#: gram.y:2861
+#: gram.y:2918
msgid "expected \")\""
msgstr "se esperaba «)»"
-#: gram.y:2898
+#: gram.y:2955
#, c-format
msgid "unrecognized RAISE statement option \"%s\""
msgstr "no se reconoce la opción «%s» de sentencia RAISE"
-#: gram.y:2903
+#: gram.y:2960
msgid "syntax error, expected \"=\""
msgstr "error de sintaxis, se esperaba «=»"
@@ -723,30 +732,30 @@ msgstr "sentencia EXECUTE"
msgid "FOR over EXECUTE statement"
msgstr "bucle FOR en torno a una sentencia EXECUTE"
-#: scan.l:232
+#: scan.l:263
msgid "unterminated quoted identifier"
msgstr "un identificador entre comillas está inconcluso"
-#: scan.l:257
+#: scan.l:306
msgid "unterminated /* comment"
msgstr "un comentario /* está inconcluso"
-#: scan.l:296
+#: scan.l:342
msgid "unterminated quoted string"
msgstr "una cadena de caracteres entre comillas está inconclusa"
-#: scan.l:333
+#: scan.l:382
msgid "unterminated dollar-quoted string"
msgstr "cadena separada por $ inconclusa"
#. translator: %s is typically "syntax error"
-#: scan.l:395
+#: scan.l:445
#, c-format
msgid "%s at end of input"
msgstr "%s al final de la entrada"
#. translator: first %s is typically "syntax error"
-#: scan.l:404
+#: scan.l:454
#, c-format
msgid "%s at or near \"%s\""
msgstr "%s en o cerca de «%s»"
diff --git a/src/pl/plpgsql/src/po/fr.po b/src/pl/plpgsql/src/po/fr.po
index 2a2bd67ace6..32916c2173c 100644
--- a/src/pl/plpgsql/src/po/fr.po
+++ b/src/pl/plpgsql/src/po/fr.po
@@ -1,7 +1,7 @@
# translation of plpgsql.po to fr_fr
# french message translation file for plpgsql
#
-# $PostgreSQL: pgsql/src/pl/plpgsql/src/po/fr.po,v 1.2 2009/05/14 21:41:53 alvherre Exp $
+# $PostgreSQL: pgsql/src/pl/plpgsql/src/po/fr.po,v 1.3 2009/06/10 23:42:44 petere Exp $
#
# Use these quotes: %s
# Guillaume Lelarge <guillaume@lelarge.info>, 2009.
@@ -697,7 +697,7 @@ msgstr "instruction SQL dans la fonction PL/pgsql %s prs de la ligne %d"
#: gram.y:2792
#, c-format
msgid "string literal in PL/PgSQL function \"%s\" near line %d"
-msgstr "chane litrale dans la fonction PL/pgsql %s prs de la ligne %d"
+msgstr "chane littrale dans la fonction PL/pgsql %s prs de la ligne %d"
#: gram.y:2805
msgid "label does not exist"
diff --git a/src/pl/plpgsql/src/po/ja.po b/src/pl/plpgsql/src/po/ja.po
index f9102178794..a74fa3e6d65 100644
--- a/src/pl/plpgsql/src/po/ja.po
+++ b/src/pl/plpgsql/src/po/ja.po
@@ -2,21 +2,24 @@ msgid ""
msgstr ""
"Project-Id-Version: plpgsql\n"
"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
-"POT-Creation-Date: 2009-02-28 21:27+0900\n"
-"PO-Revision-Date: 2009-03-01 10:04+0900\n"
+"POT-Creation-Date: 2009-05-08 19:24+0900\n"
+"PO-Revision-Date: 2009-05-08 19:26+0900\n"
"Last-Translator: HOTTA Michihde <hotta@net-newbie.com>\n"
-"Language-Team: \n"
+"Language-Team: Japan PostgreSQL Users Group <jpug-doc@ml.postgresql.jp>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Japanese\n"
"X-Poedit-Country: JAPAN\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: pl_comp.c:418 pl_handler.c:177
+#, c-format
msgid "PL/pgSQL functions cannot accept type %s"
msgstr "PL/pgSQL 関数では %s 型は指定できません"
#: pl_comp.c:501
+#, c-format
msgid "could not determine actual return type for polymorphic function \"%s\""
msgstr ""
"関数 \"%s\" が多様な形を持つため、実際の戻り値の型を特定できませんでした"
@@ -26,6 +29,7 @@ msgid "trigger functions can only be called as triggers"
msgstr "トリガー関数はトリガーとしてのみコールできます"
#: pl_comp.c:537 pl_handler.c:162
+#, c-format
msgid "PL/pgSQL functions cannot return type %s"
msgstr "PL/pgSQL 関数は %s 型を返せません"
@@ -38,9 +42,11 @@ msgid ""
"The arguments of the trigger can be accessed through TG_NARGS and TG_ARGV "
"instead."
msgstr ""
-"その代わり、トリガーの引数には TG_NARGS と TG_ARGV を通してのみアクセスできます"
+"その代わり、トリガーの引数には TG_NARGS と TG_ARGV を通してのみアクセスできま"
+"す"
#: pl_comp.c:769
+#, c-format
msgid "compilation of PL/pgSQL function \"%s\" near line %d"
msgstr "PL/pgSQL 関数 \"%s\" の %d 行目付近でのコンパイル"
@@ -49,80 +55,88 @@ msgid "expected \"[\""
msgstr "\"[\" を期待していました"
#: pl_comp.c:942
+#, c-format
msgid "row \"%s\" has no field \"%s\""
msgstr "行 \"%s\" には列 \"%s\" がありません"
#: pl_comp.c:1044
+#, c-format
msgid "row \"%s.%s\" has no field \"%s\""
msgstr "行 \"%s.%s\" には列 \"%s\" がありません"
#: pl_comp.c:1356
+#, c-format
msgid "relation \"%s\" does not exist"
msgstr "リレーション \"%s\" がありません"
#: pl_comp.c:1401
+#, c-format
msgid "relation \"%s.%s\" does not exist"
msgstr "リレーション \"%s.%s\" がありません"
#: pl_comp.c:1484
+#, c-format
msgid "variable \"%s\" has pseudo-type %s"
msgstr "変数 \"%s\" の型は擬似タイプ %s です"
#: pl_comp.c:1545
+#, c-format
msgid "relation \"%s\" is not a table"
msgstr "リレーション \"%s\" はテーブルではありません"
#: pl_comp.c:1718
+#, c-format
msgid "type \"%s\" is only a shell"
msgstr "型 \"%s\" はシェルでのみ使えます"
#: pl_comp.c:1788 pl_comp.c:1841
+#, c-format
msgid "unrecognized exception condition \"%s\""
msgstr "例外条件 \"%s\" が認識できません"
#: pl_comp.c:1996
+#, c-format
msgid ""
"could not determine actual argument type for polymorphic function \"%s\""
-msgstr ""
-"関数 \"%s\" が多様な形を持つため、実際の引数の型を特定できませんでした"
+msgstr "関数 \"%s\" が多様な形を持つため、実際の引数の型を特定できませんでした"
-#: pl_exec.c:234 pl_exec.c:505
+#: pl_exec.c:235 pl_exec.c:505
msgid "during initialization of execution state"
msgstr "実行状態の初期化中に"
-#: pl_exec.c:241 pl_exec.c:632
+#: pl_exec.c:242 pl_exec.c:632
msgid "while storing call arguments into local variables"
msgstr "引数をローカル変数に格納する際に"
-#: pl_exec.c:296 pl_exec.c:643
+#: pl_exec.c:297 pl_exec.c:643
msgid "during function entry"
msgstr "関数登録の際に"
-#: pl_exec.c:327 pl_exec.c:674
+#: pl_exec.c:328 pl_exec.c:674
msgid "CONTINUE cannot be used outside a loop"
msgstr "CONTINUE はループの外では使えません"
-#: pl_exec.c:331 pl_exec.c:678
+#: pl_exec.c:332 pl_exec.c:678
msgid "RAISE without parameters cannot be used outside an exception handler"
msgstr "引数の無い RAISE は、例外ハンドラの外では使えません"
-#: pl_exec.c:335
+#: pl_exec.c:336
msgid "control reached end of function without RETURN"
msgstr "RETURN が現れる前に、制御が関数の終わりに達しました"
-#: pl_exec.c:342
+#: pl_exec.c:343
msgid "while casting return value to function's return type"
msgstr "戻り値を関数の戻り値の型へキャストする際に"
-#: pl_exec.c:355 pl_exec.c:2351
+#: pl_exec.c:356 pl_exec.c:2351
msgid "set-valued function called in context that cannot accept a set"
msgstr "値のセットを受け付けないような文脈で、セット値を返す関数が呼ばれました"
-#: pl_exec.c:390
+#: pl_exec.c:391
msgid "returned record type does not match expected record type"
msgstr "戻りレコードの型が期待するレコードの型と一致しません"
-#: pl_exec.c:446 pl_exec.c:686
+#: pl_exec.c:447 pl_exec.c:686
msgid "during function exit"
msgstr "関数を抜ける際に"
@@ -137,47 +151,51 @@ msgstr "トリガー手続きはセットを返すことができません"
#: pl_exec.c:709
msgid ""
"returned row structure does not match the structure of the triggering table"
-msgstr ""
-"返された行の構造が、トリガーしているテーブルの構造とマッチしません"
+msgstr "返された行の構造が、トリガーしているテーブルの構造とマッチしません"
#. translator: last %s is a phrase such as "during statement block local variable initialization"
-#: pl_exec.c:769
+#: pl_exec.c:768
+#, c-format
msgid "PL/pgSQL function \"%s\" line %d %s"
msgstr "PL/pgSQL 関数 \"%s\" の %d 行目で %s"
#. translator: last %s is a phrase such as "while storing call arguments into local variables"
-#: pl_exec.c:777
+#: pl_exec.c:776
+#, c-format
msgid "PL/pgSQL function \"%s\" %s"
msgstr "PL/pgSQL 関数 \"%s\" で %s"
#. translator: last %s is a plpgsql statement type name
-#: pl_exec.c:785
+#: pl_exec.c:784
+#, c-format
msgid "PL/pgSQL function \"%s\" line %d at %s"
msgstr "PL/pgSQL 関数 \"%s\" の %d 行目の型 %s"
-#: pl_exec.c:791
+#: pl_exec.c:790
+#, c-format
msgid "PL/pgSQL function \"%s\""
msgstr "PL/pgSQL 関数 \"%s\""
-#: pl_exec.c:900
+#: pl_exec.c:899
msgid "during statement block local variable initialization"
msgstr "ステートメントブロックでローカル変数を初期化する際に"
-#: pl_exec.c:942
+#: pl_exec.c:941
+#, c-format
msgid "variable \"%s\" declared NOT NULL cannot default to NULL"
msgstr ""
-"変数 \"%s\" は NOT NULL として宣言されているため、"
-"初期値を NULL にすることはできません"
+"変数 \"%s\" は NOT NULL として宣言されているため、初期値を NULL にすることは"
+"できません"
-#: pl_exec.c:990
+#: pl_exec.c:987
msgid "during statement block entry"
msgstr "ステートメントブロックを登録する際に"
-#: pl_exec.c:1011
+#: pl_exec.c:1008
msgid "during statement block exit"
msgstr "ステートメントブロックを抜ける際に"
-#: pl_exec.c:1053
+#: pl_exec.c:1051
msgid "during exception cleanup"
msgstr "例外をクリーンアップする際に"
@@ -206,6 +224,7 @@ msgid "BY value of FOR loop must be greater than zero"
msgstr "FOR ループにおける BY の値はゼロより大きくなければなりません"
#: pl_exec.c:1884 pl_exec.c:3122
+#, c-format
msgid "cursor \"%s\" already in use"
msgstr "カーソル \"%s\" はすでに使われています"
@@ -217,7 +236,7 @@ msgstr "引数なしのカーソルに引数が与えられました"
msgid "arguments required for cursor"
msgstr "カーソルには引数が必要です"
-#: pl_exec.c:2144 gram.y:2404
+#: pl_exec.c:2144 gram.y:2419
msgid "cannot use RETURN NEXT in a non-SETOF function"
msgstr "SETOF でない関数では RETURN NEXT は使えません"
@@ -225,11 +244,12 @@ msgstr "SETOF でない関数では RETURN NEXT は使えません"
msgid "wrong result type supplied in RETURN NEXT"
msgstr "RETURN NEXT において誤った戻り値の型が指定されています"
-#: pl_exec.c:2191 pl_exec.c:3606 pl_exec.c:3898 pl_exec.c:3937
+#: pl_exec.c:2191 pl_exec.c:3601 pl_exec.c:3893 pl_exec.c:3932
+#, c-format
msgid "record \"%s\" is not assigned yet"
msgstr "レコード \"%s\" には、まだ値が代入されていません"
-#: pl_exec.c:2193 pl_exec.c:3608 pl_exec.c:3900 pl_exec.c:3939
+#: pl_exec.c:2193 pl_exec.c:3603 pl_exec.c:3895 pl_exec.c:3934
msgid "The tuple structure of a not-yet-assigned record is indeterminate."
msgstr "まだ代入されていないレコードのタプル構造は不定です"
@@ -241,7 +261,7 @@ msgstr "RETURN NEXT において、誤ったレコード型が指定されてい
msgid "RETURN NEXT must have a parameter"
msgstr "RETURN NEXT にはパラメーターが必要です"
-#: pl_exec.c:2285 gram.y:2451
+#: pl_exec.c:2285 gram.y:2466
msgid "cannot use RETURN QUERY in a non-SETOF function"
msgstr "SETOF でない関数では RETURN QUERY は使えません"
@@ -262,10 +282,12 @@ msgid "RAISE statement option cannot be null"
msgstr "RAISE ステートメントのオプションには NULL は指定できません"
#: pl_exec.c:2477 pl_exec.c:2486 pl_exec.c:2494 pl_exec.c:2502
+#, c-format
msgid "RAISE option already specified: %s"
msgstr "RAISE オプションは既に指定されています: %s"
-#: pl_exec.c:2537 pl_exec.c:2538 pl_exec.c:5131 pl_exec.c:5136 pl_exec.c:5145
+#: pl_exec.c:2537 pl_exec.c:2538 pl_exec.c:5125 pl_exec.c:5130 pl_exec.c:5139
+#, c-format
msgid "%s"
msgstr "%s"
@@ -301,7 +323,7 @@ msgstr "クエリーに結果データの返却先が指定されていません
msgid "If you want to discard the results of a SELECT, use PERFORM instead."
msgstr "SELECT の結果を破棄したい場合は、代わりに PERFORM を使ってください"
-#: pl_exec.c:2913 pl_exec.c:3163 pl_exec.c:5399
+#: pl_exec.c:2913 pl_exec.c:3163 pl_exec.c:5417
msgid "query string argument of EXECUTE is null"
msgstr "EXECUTE のクエリー文字列の引数が NULL です"
@@ -309,11 +331,13 @@ msgstr "EXECUTE のクエリー文字列の引数が NULL です"
msgid "EXECUTE of SELECT ... INTO is not implemented"
msgstr "SELECT ... INTO の EXECUTE は実装されていません"
-#: pl_exec.c:3297 pl_exec.c:3393
+#: pl_exec.c:3297 pl_exec.c:3388
+#, c-format
msgid "cursor variable \"%s\" is null"
msgstr "カーソル変数 \"%s\" が NULL です"
-#: pl_exec.c:3304 pl_exec.c:3400
+#: pl_exec.c:3304 pl_exec.c:3395
+#, c-format
msgid "cursor \"%s\" does not exist"
msgstr "カーソル \"%s\" は存在しません"
@@ -321,292 +345,331 @@ msgstr "カーソル \"%s\" は存在しません"
msgid "relative or absolute cursor position is null"
msgstr "相対もしくは絶対カーソル位置が NULL です"
-#: pl_exec.c:3460
+#: pl_exec.c:3455
+#, c-format
msgid "null value cannot be assigned to variable \"%s\" declared NOT NULL"
msgstr "NOT NULL として宣言された変数 \"%s\" には NULL を代入できません"
-#: pl_exec.c:3505
+#: pl_exec.c:3500
msgid "cannot assign non-composite value to a row variable"
msgstr "複合値でない値を行変数に代入できません"
-#: pl_exec.c:3547
+#: pl_exec.c:3542
msgid "cannot assign non-composite value to a record variable"
msgstr "複合値でない値をレコード変数に代入できません"
-#: pl_exec.c:3619 pl_exec.c:3944
+#: pl_exec.c:3614 pl_exec.c:3939
+#, c-format
msgid "record \"%s\" has no field \"%s\""
msgstr "レコード \"%s\" には列 \"%s\" はありません"
-#: pl_exec.c:3717
+#: pl_exec.c:3712
+#, c-format
msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
msgstr "配列の次元数(%d)が指定可能な最大値(%d)を超えています"
-#: pl_exec.c:3731
+#: pl_exec.c:3726
msgid "subscripted object is not an array"
msgstr "添字つきオブジェクトは配列ではありません"
-#: pl_exec.c:3754
+#: pl_exec.c:3749
msgid "array subscript in assignment must not be null"
msgstr "代入における配列の添字が NULL であってはなりません"
-#: pl_exec.c:3860 pl_exec.c:3885 pl_exec.c:3922
+#: pl_exec.c:3855 pl_exec.c:3880 pl_exec.c:3917
+#, c-format
msgid "type of \"%s\" does not match that when preparing the plan"
msgstr "\"%s\" の型が、実行計画を準備する際の型と一致しません"
-#: pl_exec.c:3951
+#: pl_exec.c:3946
+#, c-format
msgid "type of \"%s.%s\" does not match that when preparing the plan"
msgstr " \"%s.%s\" の型が、実行計画を準備する際の型と一致しません"
-#: pl_exec.c:3976
+#: pl_exec.c:3971
+#, c-format
msgid "type of tgargv[%d] does not match that when preparing the plan"
msgstr "tgargv[%d]の型が、実行計画を準備する際の型と一致しません"
-#: pl_exec.c:4069
+#: pl_exec.c:4064
+#, c-format
msgid "query \"%s\" did not return data"
msgstr "クエリー \"%s\" がデータを返しませんでした"
-#: pl_exec.c:4086
+#: pl_exec.c:4081
+#, c-format
msgid "query \"%s\" returned more than one row"
msgstr "クエリー \"%s\" が複数の行を返しました"
-#: pl_exec.c:4091
-msgid "query \"%s\" returned %d columns"
-msgstr "クエリー \"%s\" が %d 個の列を返しました"
-
-#: pl_exec.c:4149
+#: pl_exec.c:4086
+#, c-format
+msgid "query \"%s\" returned %d column"
+msgid_plural "query \"%s\" returned %d columns"
+msgstr[0] "クエリー \"%s\" が %d 個の列を返しました"
+msgstr[1] "クエリー \"%s\" が %d 個の列を返しました"
+
+#: pl_exec.c:4145
+#, c-format
msgid "query \"%s\" is not a SELECT"
msgstr "クエリー \"%s\" が SELECT ではありません"
-#: pl_exec.c:5126
+#: pl_exec.c:5120
msgid "N/A (dropped column)"
msgstr "N/A (除外された列)"
-#: pl_exec.c:5137
+#: pl_exec.c:5131
+#, c-format
msgid ""
"Number of returned columns (%d) does not match expected column count (%d)."
-msgstr ""
-"返された列数(%d)が期待する列数(%d)と一致しません"
+msgstr "返された列数(%d)が期待する列数(%d)と一致しません"
-#: pl_exec.c:5146
+#: pl_exec.c:5140
+#, c-format
msgid "Returned type %s does not match expected type %s in column \"%s\"."
msgstr "列 \"%3$s\" において、返された型 %1$s が期待する型 %2$s と一致しません"
-#: gram.y:359
+#: gram.y:355
msgid "row or record variable cannot be CONSTANT"
msgstr "行またはレコード変数を CONSTRAINT にはできません"
-#: gram.y:368
+#: gram.y:364
msgid "row or record variable cannot be NOT NULL"
msgstr "行またはレコード変数を NOT NULL にはできません"
-#: gram.y:377
+#: gram.y:373
msgid "default value for row or record variable is not supported"
msgstr "行またはレコード変数のデフォルト値指定はサポートされていません"
-#: gram.y:526
+#: gram.y:522
msgid "only positional parameters can be aliased"
msgstr "位置パラメータのみが別名指定可能です"
-#: gram.y:536
+#: gram.y:532
+#, c-format
msgid "function has no parameter \"%s\""
msgstr "関数にパラメーター \"%s\" がありません"
-#: gram.y:746 gram.y:750 gram.y:754
+#: gram.y:560 gram.y:564 gram.y:568
+msgid "duplicate declaration"
+msgstr "重複した宣言です。"
+
+#: gram.y:761 gram.y:765 gram.y:769
msgid "expected an integer variable"
msgstr "整数値を期待していました"
-#: gram.y:1009 gram.y:1198
+#: gram.y:1024 gram.y:1213
msgid ""
"loop variable of loop over rows must be a record or row variable or list of "
"scalar variables"
msgstr ""
-"行をまたがるループにおけるループ変数は、"
-"レコード、行変数、スカラー変数並びのいずれかでなければなりません"
+"行をまたがるループにおけるループ変数は、レコード、行変数、スカラー変数並びの"
+"いずれかでなければなりません"
-#: gram.y:1046
+#: gram.y:1061
msgid "cursor FOR loop must have only one target variable"
msgstr "カーソルを使った FOR ループには、ターゲット変数が1個だけ必要です"
-#: gram.y:1058
+#: gram.y:1073
msgid "cursor FOR loop must use a bound cursor variable"
msgstr ""
-"カーソルを使った FOR ループでは、"
-"それに関連付けられたカーソル変数を使用しなければなりません"
+"カーソルを使った FOR ループでは、それに関連付けられたカーソル変数を使用しなけ"
+"ればなりません"
-#: gram.y:1134
+#: gram.y:1149
msgid "integer FOR loop must have only one target variable"
msgstr "整数を使った FOR ループには、ターゲット変数が1個だけ必要です"
-#: gram.y:1167
+#: gram.y:1182
msgid "cannot specify REVERSE in query FOR loop"
msgstr "クエリーを使った FOR ループの中では REVERSE は指定できません"
-#: gram.y:1258 gram.y:2616
+#: gram.y:1273 gram.y:2631
+#, c-format
msgid "\"%s\" is not a scalar variable"
msgstr "\"%s\" はスカラー変数ではありません"
-#: gram.y:1311 gram.y:1351 gram.y:1395 gram.y:2172 gram.y:2263 gram.y:2881
+#: gram.y:1326 gram.y:1366 gram.y:1410 gram.y:2187 gram.y:2278 gram.y:2938
msgid "unexpected end of function definition"
msgstr "予期しない関数定義の終端に達しました"
-#: gram.y:1415 gram.y:1437 gram.y:1451 gram.y:1459 gram.y:1520 gram.y:1607
-#: gram.y:1776 gram.y:1780
+#: gram.y:1430 gram.y:1452 gram.y:1466 gram.y:1474 gram.y:1535 gram.y:1622
+#: gram.y:1787
msgid "syntax error"
msgstr "構文エラー"
-#: gram.y:1441 gram.y:1443 gram.y:1784 gram.y:1786
+#: gram.y:1456 gram.y:1458 gram.y:1791 gram.y:1793
msgid "invalid SQLSTATE code"
msgstr "無効な SQLSTATE コードです"
-#: gram.y:1571 gram.y:2565 gram.y:2810
+#: gram.y:1586 gram.y:2580 gram.y:2867
+#, c-format
msgid "syntax error at \"%s\""
msgstr " \"%s\" で構文エラー"
-#: gram.y:1573
+#: gram.y:1588
msgid "Expected \"FOR\", to open a reference cursor."
msgstr "参照カーソルを開くために \"FOR\" を期待していました"
-#: gram.y:1660
+#: gram.y:1675
msgid "cursor variable must be a simple variable"
msgstr "カーソル変数は単純変数でなければなりません"
-#: gram.y:1667
+#: gram.y:1682
+#, c-format
msgid "variable \"%s\" must be of type cursor or refcursor"
msgstr "変数 \"%s\" は cursor 型または refcursor 型でなければなりません"
-#: gram.y:1674 gram.y:1678 gram.y:1682
+#: gram.y:1689 gram.y:1693 gram.y:1697
msgid "expected a cursor or refcursor variable"
msgstr "cursor 型または refcursor 型変数を期待していました"
-#: gram.y:1907 gram.y:2978
+#: gram.y:1922 gram.y:3035
msgid "too many variables specified in SQL statement"
msgstr "SQL ステートメントに指定された変数が多すぎます"
-#: gram.y:1992 gram.y:2002 gram.y:2095
+#: gram.y:2007 gram.y:2017 gram.y:2110
msgid "mismatched parentheses"
msgstr "カッコが対応していません"
-#: gram.y:2007
+#: gram.y:2022
+#, c-format
msgid "missing \"%s\" at end of SQL expression"
msgstr "SQL 表現式の終端に \"%s\" がありません"
-#: gram.y:2012
+#: gram.y:2027
+#, c-format
msgid "missing \"%s\" at end of SQL statement"
msgstr "SQL ステートメントの終端に \"%s\" がありません"
-#: gram.y:2097
+#: gram.y:2112
msgid "incomplete data type declaration"
msgstr "データ型の定義が不完全です"
-#: gram.y:2122
+#: gram.y:2137
msgid "missing data type declaration"
msgstr "データ型の定義がありません"
-#: gram.y:2177
+#: gram.y:2192
msgid "INTO specified more than once"
msgstr "INTO が複数回指定されています"
-#: gram.y:2326
+#: gram.y:2341
msgid "expected FROM or IN"
msgstr "FROM もしくは IN を期待していました"
-#: gram.y:2347
+#: gram.y:2362
msgid ""
"RETURN cannot have a parameter in function returning set; use RETURN NEXT or "
"RETURN QUERY"
msgstr ""
-"セットを返す関数では、RETURN にはパラメータを指定できません。"
-"RETURN NEXT か RETURN QUERY を使ってください。"
+"セットを返す関数では、RETURN にはパラメータを指定できません。RETURN NEXT か "
+"RETURN QUERY を使ってください。"
-#: gram.y:2353
+#: gram.y:2368
msgid "RETURN cannot have a parameter in function with OUT parameters"
msgstr "OUT パラメータのない関数では、RETURN にはパラメータを指定できません"
-#: gram.y:2359
+#: gram.y:2374
msgid "RETURN cannot have a parameter in function returning void"
msgstr "void を返す関数では、RETURN にはパラメータを指定できません"
-#: gram.y:2378 gram.y:2382
+#: gram.y:2393 gram.y:2397
msgid "RETURN must specify a record or row variable in function returning row"
msgstr ""
"行を返す関数では、RETURN にレコードまたは行変数を指定しなければなりません"
-#: gram.y:2415
+#: gram.y:2430
msgid "RETURN NEXT cannot have a parameter in function with OUT parameters"
msgstr ""
"OUT パラメータのない関数では、RETURN NEXT にはパラメータを指定できません"
-#: gram.y:2431 gram.y:2435
+#: gram.y:2446 gram.y:2450
msgid ""
"RETURN NEXT must specify a record or row variable in function returning row"
msgstr ""
-"行を返す関数では、RETURN NEXT にレコードまたは行変数を指定しなければなりません"
+"行を返す関数では、RETURN NEXT にレコードまたは行変数を指定しなければなりませ"
+"ん"
-#: gram.y:2498
+#: gram.y:2513
+#, c-format
msgid "\"%s\" is declared CONSTANT"
msgstr "\"%s\" は CONSTANT として宣言されています"
-#: gram.y:2515
+#: gram.y:2530
msgid "cannot assign to tg_argv"
msgstr "tg_argv への代入はできません"
-#: gram.y:2566
+#: gram.y:2581
msgid ""
"Expected record variable, row variable, or list of scalar variables "
"following INTO."
msgstr ""
-"INTO の直後には、レコード変数、行変数、スカラー変数並びのいずれかが"
-"来なければなりません"
+"INTO の直後には、レコード変数、行変数、スカラー変数並びのいずれかが来なければ"
+"なりません"
-#: gram.y:2600
+#: gram.y:2615
msgid "too many INTO variables specified"
msgstr "INTO 変数の指定が多すぎます"
-#: gram.y:2734
+#: gram.y:2749
+#, c-format
msgid "SQL statement in PL/PgSQL function \"%s\" near line %d"
msgstr "PL/PgSQL 関数 \"%s\" の %d 行目周辺の SQL ステートメント"
-#: gram.y:2748
+#: gram.y:2792
+#, c-format
+msgid "string literal in PL/PgSQL function \"%s\" near line %d"
+msgstr "PL/PgSQL 関数 \"%s\" の %d 行目周辺の文字列リテラル"
+
+#: gram.y:2805
msgid "label does not exist"
msgstr "ラベルが存在しません"
-#: gram.y:2762
+#: gram.y:2819
+#, c-format
msgid "end label \"%s\" specified for unlabelled block"
msgstr "ラベル無しブロックで終端ラベル \"%s\" が指定されました"
-#: gram.y:2771
+#: gram.y:2828
+#, c-format
msgid "end label \"%s\" differs from block's label \"%s\""
msgstr "終端ラベル \"%s\" がブロックのラベル \"%s\" と異なります"
-#: gram.y:2801
+#: gram.y:2858
+#, c-format
msgid "cursor \"%s\" has no arguments"
msgstr "カーソル \"%s\" に引数がありません"
-#: gram.y:2823
+#: gram.y:2880
+#, c-format
msgid "cursor \"%s\" has arguments"
msgstr "カーソル \"%s\" に引数がついています"
-#: gram.y:2861
+#: gram.y:2918
msgid "expected \")\""
msgstr " \")\" を期待していました"
-#: gram.y:2898
+#: gram.y:2955
+#, c-format
msgid "unrecognized RAISE statement option \"%s\""
msgstr "RAISE ステートメントのオプション \"%s\" を認識できません"
-#: gram.y:2903
+#: gram.y:2960
msgid "syntax error, expected \"=\""
msgstr "構文エラー。\"=\" を期待していました"
#: pl_funcs.c:359
+#, c-format
msgid "variable \"%s\" does not exist in the current block"
msgstr "変数 \"%s\" は現在のブロックにはありません"
#: pl_funcs.c:415
+#, c-format
msgid "unterminated \" in identifier: %s"
msgstr "識別子 %s に終端されていない \" があります"
#: pl_funcs.c:439
+#, c-format
msgid "qualified identifier cannot be used here: %s"
msgstr "限定識別子は、ここでは使えません:%s"
@@ -642,28 +705,39 @@ msgstr "EXECUTE ステートメント"
msgid "FOR over EXECUTE statement"
msgstr "EXECUTE ステートメントを制御する FOR"
-#: scan.l:232
+#: scan.l:263
msgid "unterminated quoted identifier"
msgstr "識別子を囲む引用符が閉じていません"
-#: scan.l:257
+#: scan.l:306
msgid "unterminated /* comment"
msgstr "/* コメントが閉じていません"
-#: scan.l:296
+#: scan.l:342
msgid "unterminated quoted string"
msgstr "文字列を囲む引用符が閉じていません"
-#: scan.l:333
+#: scan.l:382
msgid "unterminated dollar-quoted string"
msgstr "文字列を囲むドル記号が閉じていません"
#. translator: %s is typically "syntax error"
-#: scan.l:395
+#: scan.l:445
+#, c-format
msgid "%s at end of input"
msgstr "入力の最後で %s"
#. translator: first %s is typically "syntax error"
-#: scan.l:404
+#: scan.l:454
+#, c-format
msgid "%s at or near \"%s\""
msgstr "\"%2$s\" もしくはその近辺で %1$s"
+
+#~ msgid "syntax error: cannot back up"
+#~ msgstr "構文エラー: バックアップできません"
+
+#~ msgid "syntax error; also virtual memory exhausted"
+#~ msgstr "構文エラー: 仮想メモリも枯渇しました"
+
+#~ msgid "parser stack overflow"
+#~ msgstr "パーサのスタックがオーバーフローしました"
diff --git a/src/pl/plpython/nls.mk b/src/pl/plpython/nls.mk
index 6e54a353120..70098792a95 100644
--- a/src/pl/plpython/nls.mk
+++ b/src/pl/plpython/nls.mk
@@ -1,5 +1,5 @@
-# $PostgreSQL: pgsql/src/pl/plpython/nls.mk,v 1.5 2009/06/04 18:33:08 tgl Exp $
+# $PostgreSQL: pgsql/src/pl/plpython/nls.mk,v 1.6 2009/06/10 23:42:44 petere Exp $
CATALOG_NAME := plpython
-AVAIL_LANGUAGES := de es fr pt_BR tr
+AVAIL_LANGUAGES := de es fr ja pt_BR tr
GETTEXT_FILES := plpython.c
GETTEXT_TRIGGERS:= errmsg errmsg_plural:1,2 errdetail errdetail_log errdetail_plural:1,2 errhint errcontext PLy_elog:2 PLy_exception_set:2 PLy_exception_set_plural:2,3
diff --git a/src/pl/plpython/po/ja.po b/src/pl/plpython/po/ja.po
new file mode 100644
index 00000000000..b5dfc1db20d
--- /dev/null
+++ b/src/pl/plpython/po/ja.po
@@ -0,0 +1,294 @@
+# LANGUAGE message translation file for plpython
+# Copyright (C) 2009 PostgreSQL Global Development Group
+# This file is distributed under the same license as the PostgreSQL package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PostgreSQL 8.4beta1\n"
+"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
+"POT-Creation-Date: 2009-04-11 10:30+0900\n"
+"PO-Revision-Date: 2009-04-11 10:31+0900\n"
+"Last-Translator: HOTTA Michihide <hotta@net-newbie.com>\n"
+"Language-Team: Japan PostgreSQL Users Group <jpug-doc@ml.postgresql.jp>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: plpython.c:420 plpython.c:445
+msgid "unexpected return value from trigger procedure"
+msgstr "トリガー手続きから期待しない戻り値が返されました"
+
+#: plpython.c:421
+msgid "Expected None or a string."
+msgstr "None もしくは文字列を期待していました。"
+
+#: plpython.c:435
+msgid ""
+"PL/Python trigger function returned \"MODIFY\" in a DELETE trigger -- ignored"
+msgstr ""
+"PL/Python トリガー関数が、DELETE トリガーで \"MODIFY\" を返しました"
+"-- 無視しました"
+
+#: plpython.c:446
+msgid "Expected None, \"OK\", \"SKIP\", or \"MODIFY\"."
+msgstr "None, \"OK\", \"SKIP\", \"MODIFY\" のいずれかを期待していました"
+
+#: plpython.c:493
+msgid "TD[\"new\"] deleted, cannot modify row"
+msgstr "TD[\"new\"] は削除されました。今となっては変更できません。"
+
+#: plpython.c:496
+msgid "TD[\"new\"] is not a dictionary"
+msgstr "TD[\"new\"] は辞書ではありません"
+
+#: plpython.c:515
+#, c-format
+msgid "name of TD[\"new\"] attribute at ordinal position %d is not a string"
+msgstr "%d 番目の TD[\"new\"] 属性の名前が文字列ではありません"
+
+#: plpython.c:519
+#, c-format
+msgid ""
+"key \"%s\" found in TD[\"new\"] does not exist as a column in the triggering "
+"row"
+msgstr ""
+"TD[\"new\"] で見つかったキー \"%s\" は、行レベルトリガーにおけるカラムとしては"
+"存在しません"
+
+#: plpython.c:540
+#, c-format
+msgid ""
+"could not compute string representation of Python object in PL/Python "
+"function \"%s\" while modifying trigger row"
+msgstr ""
+"PL/Python 関数 \"%s\" でトリガー処理中に、Python オブジェクトの文字列表現を"
+"導出できませんでした"
+
+#: plpython.c:622
+msgid "could not create new dictionary while building trigger arguments"
+msgstr "トリガーの引数を構成中に、新しい辞書を生成できませんでした"
+
+#: plpython.c:830
+msgid "unsupported set function return mode"
+msgstr "未サポートの集合関数リターンモードです"
+
+#: plpython.c:831
+msgid ""
+"PL/Python set-returning functions only support returning only value per call."
+msgstr ""
+"PL/Python の集合を返す関数では、1回のコールのたびに値だけを返すことが"
+"サポートされています"
+
+#: plpython.c:843
+msgid "returned object cannot be iterated"
+msgstr "返されたオブジェクトは反復適用できません"
+
+#: plpython.c:844
+msgid "PL/Python set-returning functions must return an iterable object."
+msgstr "PL/Python の集合を返す関数では、イテレータ(反復子)オブジェクトを"
+"返さなければなりません"
+
+#: plpython.c:872
+msgid "error fetching next item from iterator"
+msgstr "イテレータ(反復子)から次の項目をフェッチ(取り出し)できません"
+
+#: plpython.c:890
+msgid "PL/Python function with return type \"void\" did not return None"
+msgstr "\"void\" 型を返す PL/Python 関数は None 型を返しません"
+
+#: plpython.c:937
+#, c-format
+msgid ""
+"could not create string representation of Python object in PL/Python "
+"function \"%s\" while creating return value"
+msgstr ""
+"PL/Python 関数 \"%s\" で戻り値を生成する際に、Python オブジェクトの"
+"文字列表現を生成できませんでした"
+
+#: plpython.c:986
+#, c-format
+msgid "PL/Python function \"%s\" failed"
+msgstr "PL/Python 関数 \"%s\" が実行に失敗しました"
+
+#: plpython.c:1056
+#, c-format
+msgid ""
+"PyList_SetItem() failed for PL/Python function \"%s\" while setting up "
+"arguments"
+msgstr ""
+"PL/Python 関数 \"%s\" で引数を設定する際に、PyList_SetItem() に失敗しました"
+
+#: plpython.c:1060
+#, c-format
+msgid ""
+"PyDict_SetItemString() failed for PL/Python function \"%s\" while setting up "
+"arguments"
+msgstr ""
+"PL/Python 関数 \"%s\" で引数を設定する際に、PyDict_SetItemString() に失敗しました"
+
+#: plpython.c:1238
+msgid "trigger functions can only be called as triggers"
+msgstr "トリガー関数はトリガーとしてのみコールできます"
+
+#: plpython.c:1242
+#, c-format
+msgid "PL/Python functions cannot return type %s"
+msgstr "PL/Python 関数は %s 型を返せません"
+
+#: plpython.c:1321
+#, c-format
+msgid "PL/Python functions cannot accept type %s"
+msgstr "PL/Python 関数は %s 型を受け付けません"
+
+#: plpython.c:1415
+#, c-format
+msgid "could not compile PL/Python function \"%s\""
+msgstr "PL/Python 関数 \"%s\" をコンパイルできません"
+
+#: plpython.c:1727
+msgid "could not create new dictionary"
+msgstr "新しいディレクトリを作れません"
+
+#: plpython.c:1814 plpython.c:1903 plpython.c:1974
+msgid "could not compute string representation of Python object"
+msgstr "Python オブジェクトの文字列表現を生成できませんでした"
+
+#: plpython.c:1828
+#, c-format
+msgid "key \"%s\" not found in mapping"
+msgstr "マッピング上にキー \"%s\" が見つかりません"
+
+#: plpython.c:1829
+msgid ""
+"To return null in a column, add the value None to the mapping with the key "
+"named after the column."
+msgstr ""
+"カラムに null を入れて返すには、カラムの後につけた名前をキーとして、"
+"マッピングに None 値を追加してください"
+
+#: plpython.c:1873
+msgid "length of returned sequence did not match number of columns in row"
+msgstr "返されたシーケンスの長さが、その行のカラム数と異なります"
+
+#: plpython.c:1987
+#, c-format
+msgid "attribute \"%s\" does not exist in Python object"
+msgstr "属性 \"%s\" が Python オブジェクト中に存在しません"
+
+#: plpython.c:1988
+msgid ""
+"To return null in a column, let the returned object have an attribute named "
+"after column with value None."
+msgstr ""
+"カラムに null を入れて返す場合は、そのカラムの後につけた名前で表される属性が"
+"値として None を持ち、返されるオブジェクトがその属性を含むようにしてください"
+
+#: plpython.c:2210
+msgid "plan.status takes no arguments"
+msgstr "plan.status は引数を取りません"
+
+#: plpython.c:2340 plpython.c:2479
+msgid "transaction aborted"
+msgstr "トランザクションがアボートしました"
+
+#: plpython.c:2347
+msgid "invalid arguments for plpy.prepare"
+msgstr "plpy.prepare の引数が不正です"
+
+#: plpython.c:2354
+msgid "second argument of plpy.prepare must be a sequence"
+msgstr "plpy.prepare の第二引数はシーケンスでなければなりません"
+
+#: plpython.c:2399
+#, c-format
+msgid "plpy.prepare: type name at ordinal position %d is not a string"
+msgstr "plpy.prepare: %d 番目の型名が文字列ではありません"
+
+#: plpython.c:2426
+msgid "plpy.prepare does not support composite types"
+msgstr "plpy.prepare は複合型をサポートしていません"
+
+#: plpython.c:2454
+msgid "unrecognized error in PLy_spi_prepare"
+msgstr "PLy_spi_prepare で認識できないエラーを検出しました"
+
+#: plpython.c:2456 plpython.c:2618 plpython.c:2665
+#, c-format
+msgid "in PL/Python function \"%s\""
+msgstr "PL/Python 関数 \"%s\" で"
+
+#: plpython.c:2492
+msgid "plpy.execute expected a query or a plan"
+msgstr "plpy.execute はクエリーもしくは実行計画を期待していました"
+
+#: plpython.c:2509
+msgid "plpy.execute takes a sequence as its second argument"
+msgstr "plpy.execute は第二引数としてシーケンスを取ります"
+
+#: plpython.c:2525 plpython.c:2552
+#, c-format
+msgid "PL/Python function \"%s\" could not execute plan"
+msgstr "PL/Python 関数 \"%s\" は計画を実行できませんでした"
+
+#: plpython.c:2529
+#, c-format
+msgid "Expected sequence of %d argument, got %d: %s"
+msgid_plural "Expected sequence of %d arguments, got %d: %s"
+msgstr[0] "%d 番目の引数はシーケンスを期待していましたが、%d が現れました:%s"
+
+#: plpython.c:2616
+msgid "unrecognized error in PLy_spi_execute_plan"
+msgstr "PLy_spi_execute_plan で認識できないエラーを検出しました"
+
+#: plpython.c:2637
+#, c-format
+msgid "SPI_execute_plan failed: %s"
+msgstr "SPI_execute_plan が失敗しました:%s"
+
+#: plpython.c:2663
+msgid "unrecognized error in PLy_spi_execute_query"
+msgstr "PLy_spi_execute_query で認識できないエラーを検出しました"
+
+#: plpython.c:2674
+#, c-format
+msgid "SPI_execute failed: %s"
+msgstr "SPI_execute が失敗しました:%s"
+
+#: plpython.c:2734
+msgid "unrecognized error in PLy_spi_execute_fetch_result"
+msgstr "PLy_spi_execute_fetch_result で認識できないエラーを検出しました"
+
+#: plpython.c:2770
+msgid "untrapped error in initialization"
+msgstr "初期化中に捕獲できないエラーがありました"
+
+#: plpython.c:2773
+msgid "could not create procedure cache"
+msgstr "手続き用キャッシュ(procedure cache)を生成できませんでした"
+
+#: plpython.c:2785
+msgid "could not import \"__main__\" module"
+msgstr "\"__main__\" モジュールをインポートできませんでした"
+
+#: plpython.c:2792
+msgid "could not initialize globals"
+msgstr "グローバル変数(globals)を初期化できませんでした"
+
+#: plpython.c:2894
+msgid "could not parse error message in plpy.elog"
+msgstr "plpy.elog でエラーメッセージをパースできませんでした"
+
+#: plpython.c:2990
+#, c-format
+msgid "PL/Python: %s"
+msgstr "PL/Python: %s"
+
+#: plpython.c:2991
+#, c-format
+msgid "%s"
+msgstr "%s"
+
+#: plpython.c:3081
+msgid "out of memory"
+msgstr "メモリ不足です"
diff --git a/src/pl/plpython/po/pt_BR.po b/src/pl/plpython/po/pt_BR.po
index 80aa11383d7..ec4724c0f78 100644
--- a/src/pl/plpython/po/pt_BR.po
+++ b/src/pl/plpython/po/pt_BR.po
@@ -53,6 +53,7 @@ msgid ""
"key \"%s\" found in TD[\"new\"] does not exist as a column in the triggering "
"row"
msgstr ""
+"chave \"%s\" encontrada em TD[\"new\"] não existe como uma coluna no registro do gatilho"
#: plpython.c:540
#, c-format
@@ -60,19 +61,21 @@ msgid ""
"could not compute string representation of Python object in PL/Python "
"function \"%s\" while modifying trigger row"
msgstr ""
+"não pode produzir representação em cadeia de caracteres do objeto Python na função \"%s\" ao modificar registro do gatilho"
#: plpython.c:622
msgid "could not create new dictionary while building trigger arguments"
-msgstr ""
+msgstr "não pode criar novo dicionário ao construir argumentos do gatilho"
#: plpython.c:830
msgid "unsupported set function return mode"
-msgstr ""
+msgstr "modo de retorno da função que retorna conjunto não é suportado"
#: plpython.c:831
msgid ""
"PL/Python set-returning functions only support returning only value per call."
msgstr ""
+"funções PL/Python que retornam conjunto só suportam retornar um valor por chamada."
#: plpython.c:843
msgid "returned object cannot be iterated"
@@ -96,6 +99,7 @@ msgid ""
"could not create string representation of Python object in PL/Python "
"function \"%s\" while creating return value"
msgstr ""
+"não pode produzir representação em cadeia de caracteres do objeto Python na função \"%s\" ao criar valor de retorno"
#: plpython.c:986
#, c-format
@@ -265,7 +269,7 @@ msgstr ""
#: plpython.c:2894
msgid "could not parse error message in plpy.elog"
-msgstr ""
+msgstr "não pode analisar mensagem de erro em plpy.elog"
#: plpython.c:2990
#, c-format
diff --git a/src/pl/tcl/nls.mk b/src/pl/tcl/nls.mk
index f331e658a98..2b298b5b25b 100644
--- a/src/pl/tcl/nls.mk
+++ b/src/pl/tcl/nls.mk
@@ -1,5 +1,5 @@
-# $PostgreSQL: pgsql/src/pl/tcl/nls.mk,v 1.5 2009/06/04 18:33:08 tgl Exp $
+# $PostgreSQL: pgsql/src/pl/tcl/nls.mk,v 1.6 2009/06/10 23:42:44 petere Exp $
CATALOG_NAME := pltcl
-AVAIL_LANGUAGES := de es fr pt_BR tr
+AVAIL_LANGUAGES := de es fr ja pt_BR tr
GETTEXT_FILES := pltcl.c
GETTEXT_TRIGGERS:= errmsg errmsg_plural:1,2 errdetail errdetail_log errdetail_plural:1,2 errhint errcontext
diff --git a/src/pl/tcl/po/ja.po b/src/pl/tcl/po/ja.po
new file mode 100644
index 00000000000..d1363d9a0a8
--- /dev/null
+++ b/src/pl/tcl/po/ja.po
@@ -0,0 +1,52 @@
+# LANGUAGE message translation file for pltcl
+# Copyright (C) 2009 PostgreSQL Global Development Group
+# This file is distributed under the same license as the PostgreSQL package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PostgreSQL 8.4\n"
+"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
+"POT-Creation-Date: 2009-04-10 23:59+0900\n"
+"PO-Revision-Date: 2009-04-11 00:00+0900\n"
+"Last-Translator: HOTTA Michihide <hotta@net-newbie.com>\n"
+"Language-Team: Japan PostgreSQL Users Group <jpug-doc@ml.postgresql.jp>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: pltcl.c:1027
+#, c-format
+msgid "%s"
+msgstr "%s"
+
+#: pltcl.c:1028
+#, c-format
+msgid ""
+"%s\n"
+"in PL/Tcl function \"%s\""
+msgstr ""
+"%s\n"
+"PL/Tcl 関数 \"%s\""
+
+#: pltcl.c:1127
+msgid "out of memory"
+msgstr "メモリ不足です"
+
+#: pltcl.c:1192
+msgid "trigger functions can only be called as triggers"
+msgstr "トリガー関数はトリガーとしてのみコールできます"
+
+#: pltcl.c:1201
+#, c-format
+msgid "PL/Tcl functions cannot return type %s"
+msgstr "PL/Tcl 関数は戻り値の型 %s を返せません"
+
+#: pltcl.c:1213
+msgid "PL/Tcl functions cannot return composite types"
+msgstr "PL/Tcl 関数は戻り値の型として複合型を返せません"
+
+#: pltcl.c:1253
+#, c-format
+msgid "PL/Tcl functions cannot accept type %s"
+msgstr "PL/Tcl 関数は型 %s を受け付けません"