diff --git a/doc/TODO b/doc/TODO
index 0467d199867..aaf2cbcf1d1 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -1,6 +1,6 @@
TODO list for PostgreSQL
========================
-Last updated: Tue Sep 4 12:27:12 EDT 2001
+Last updated: Wed Sep 5 20:04:07 EDT 2001
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
@@ -178,7 +178,8 @@ COMMANDS
o Allow INSERT INTO tab (col1, ..) VALUES (val1, ..), (val2, ..)
o Allow INSERT INTO my_table VALUES (a, b, c, DEFAULT, x, y, z, ...)
o Disallow missing columns in INSERT ... VALUES, per ANSI
- o Allow INSERT/UPDATE ... RETURNING new.col or old.col (Philip)
+ o Allow INSERT/UPDATE ... RETURNING new.col or old.col, handle
+ RULE cases (Philip)
* SHOW/SET
o Add SHOW command to display locks
o -Add SHOW command to show all settings
@@ -310,8 +311,11 @@ MISCELLANEOUS
* Allow logging of query durations
* Add hash for evaluating GROUP BY aggregates
* -Read pg_hba.conf only on postmaster startup or SIGHUP (Bruce)
-* Improve spinlock code, perhaps with OS semaphores, sleeper queue, or
- spining to obtain lock on multi-cpu systems
+* Improve spinlock code
+ o use SysV semaphores or queue of backends waiting on the lock
+ o wakeup sleeper or sleep for less than one clock tick
+ o spin for lock on multi-cpu machines, yield on single cpu machines
+ o read/write locks
* Add queue of backends waiting for spinlock
SOURCE CODE
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index ba9bd4d0e60..d7901bc250b 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -1,5 +1,5 @@
@@ -29,39 +29,31 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.20 2001/08/26 17:04:02 momjia
in C
- This describes an embedded SQL in C
- package for Postgres.
- It was written by Linus Tolke (linus@epact.se)
- and Michael Meskes (meskes@debian.org).
- The package is installed with the Postgres> distribution.
-
-
-
- Permission is granted to copy and use in the same way as you are allowed
- to copy and use the rest of PostgreSQL.
-
-
+ This describes the embedded SQL package for
+ Postgres. It works with
+ C and C++. It was written by
+ Linus Tolke (linus@epact.se) and Michael Meskes
+ (meskes@debian.org). The package is installed with the
+ Postgres> distribution, and carries a similar license.
Why Embedded SQL?
- Embedded SQL has some small advantages over other ways
- to handle SQL
- queries. It takes care of all the tedious moving of information to and
- from variables in your C program.
- Many RDBMS packages
- support this embedded language.
+ Embedded SQL has advantages over other methods
+ for handling SQL queries. It takes care of
+ the tedious passing of information to and from variables in your
+ C or C++ program. Many
+ RDBMS packages support this embedded language.
- There is an ANSI-standard describing how the embedded language should
- work. ecpg was designed to meet this standard
- as much as possible. So it is
- possible to port programs with embedded SQL written for
- other RDBMS packages to
- Postgres and thus promoting the spirit of free
- software.
+
+ There is an ANSI standard describing how the embedded language
+ should work. ecpg was designed to match
+ this standard as much as possible. It is possible to port embedded
+ SQL programs written for other
+ RDBMS to Postgres.
@@ -69,40 +61,27 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.20 2001/08/26 17:04:02 momjia
The Concept
- You write your program in C with some
- special SQL things.
- For declaring variables that can be used in
- SQL statements you need to
- put them in a special declare section.
- You use a special syntax for the SQL queries.
+ You write your program in C/C++ with special
+ SQL constructs. When declaring variables to be
+ used in SQL statements, you need to put them in a
+ special declare> section. You use a special syntax for the
+ SQL queries.
- Before compiling you run the file through
- the embedded SQL C
- preprocessor and it converts the SQL statements you used
- to function
- calls with the variables used as arguments. Both variables that are used
- as input to the SQL statements and variables that will
- contain the
- result are passed.
+ Before compiling you run the file through the embedded
+ SQL C preprocessor and it
+ converts the SQL statements you used to function
+ calls with the variables used as arguments. Both query input and
+ result output variables are passed.
- Then you compile and at link time you link with a special library that
- contains the functions used. These functions (actually it is mostly one
- single function) fetches the information from the arguments, performs
- the SQL query using the ordinary interface
- (libpq) and puts back
- the result in the arguments dedicated for output.
-
-
-
- Then you run your program and when the control arrives to
- the SQL
- statement the SQL statement is performed against
- the database and you
- can continue with the result.
+ After compiling, you must link with a special library that contains
+ needed functions. These functions fetch information from the
+ arguments, perform the SQL query using the
+ libpq interface, and put the result in the
+ arguments specified for output.
@@ -110,53 +89,51 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.20 2001/08/26 17:04:02 momjia
How To Use ecpg
- This section describes how to use the ecpg tool.
+ This section describes how to use ecpg.
Preprocessor
- The preprocessor is called ecpg.
- After installation it resides in
- the Postgresbin/ directory.
+ The preprocessor is called ecpg. After
+ installation it resides in the Postgres
+ bin/ directory.
Library
- The ecpg library is called
- libecpg.a or
- libecpg.so. Additionally, the library
- uses the libpq library for communication to the
- Postgres server so you will
- have to link your program with -lecpg -lpq.
+ The ecpg library is called
+ libecpg.a or libecpg.so.
+ Additionally, the library uses the libpq
+ library for communication to the
+ Postgres server. You will have to link
+ your program using -lecpg -lpq.
- The library has some methods that are "hidden" but that could prove very
- useful sometime.
+ The library has some methods that are "hidden" but may prove
+ useful.
ECPGdebug(int on, FILE
- *stream)
- turns on debug logging if called with the first argument non-zero.
- Debug logging is done on stream.
- Most SQL statement logs its arguments and result.
+ *stream) turns on debug
+ logging if called with the first argument non-zero. Debug
+ logging is done on stream. Most
+ SQL statement log their arguments and results.
- The most important one (ECPGdo)
- that is called on almost all SQL
- statements logs both its expanded string,
- i.e. the string
- with all the input variables inserted, and the result from the
- Postgres server.
- This can be very useful when searching for errors
- in your SQL statements.
+ The most important function , ECPGdo, logs
+ all SQL statements with both the expanded
+ string, i.e. the string with all the input variables inserted,
+ and the result from the Postgres
+ server. This can be very useful when searching for errors in
+ your SQL statements.
@@ -174,13 +151,13 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.20 2001/08/26 17:04:02 momjia
Error handling
- To be able to detect errors from the Postgres
- server you include a line like
+ To detect errors from the Postgres
+ server, include a line like:
- exec sql include sqlca;
+exec sql include sqlca;
- in the include section of your file. This will define a struct and a
- variable with the name sqlca as following:
+ in the include section of your file. This will define a struct and
+ a variable with the name sqlca as follows:
struct sqlca
{
@@ -218,19 +195,18 @@ struct sqlca
- If an error occured in the last SQL statement
- then sqlca.sqlcode
- will be non-zero. If sqlca.sqlcode is less that 0
- then this is
- some kind of serious error, like the database definition does not match
- the query given. If it is bigger than 0 then this is a normal error like
- the table did not contain the requested row.
+ If an error occured in the last SQL statement.
+ sqlca.sqlcode will be non-zero. If
+ sqlca.sqlcode is less that 0, this is a
+ serious error, like the database definition does not match the
+ query. If it is greater than 0, it is a normal error like the
+ table did not contain the requested row.
- sqlca.sqlerrm.sqlerrmc will contain a string that describes the error.
- The string ends with the line number
- in the source file.
+ sqlca.sqlerrm.sqlerrmc will contain a string
+ that describes the error. The string ends with the line number in
+ the source file.
@@ -241,7 +217,7 @@ struct sqlca
-12, Out of memory in line %d.
- Does not normally occur. This is a sign that your virtual memory is
+ Should not normally occur. This indicates your virtual memory is
exhausted.
@@ -251,9 +227,10 @@ struct sqlca
-200, Unsupported type %s on line %d.
- Does not normally occur. This is a sign that the preprocessor has
- generated something that the library does not know about. Perhaps you
- are running incompatible versions of the preprocessor and the library.
+ Should not normally occur. This indicates the preprocessor has
+ generated something that the library does not know about.
+ Perhaps you are running incompatible versions of the
+ preprocessor and the library.
@@ -262,10 +239,10 @@ struct sqlca
-201, Too many arguments line %d.
- This means that Postgres has returned more
- arguments than we have
- matching variables. Perhaps you have forgotten a couple of the host
- variables in the INTO :var1,:var2-list.
+ This means that Postgres has
+ returned more arguments than we have matching variables.
+ Perhaps you have forgotten a couple of the host variables in
+ the INTO :var1,:var2-list.
@@ -274,10 +251,10 @@ struct sqlca
-202, Too few arguments line %d.
- This means that Postgres has returned fewer
- arguments than we have
- host variables. Perhaps you have too many host variables in the
- INTO :var1,:var2-list.
+ This means that Postgres has
+ returned fewer arguments than we have host variables. Perhaps
+ you have too many host variables in the INTO
+ :var1,:var2-list.
@@ -286,9 +263,9 @@ struct sqlca
-203, Too many matches line %d.
- This means that the query has returned several lines but the
- variables specified are no arrays. The SELECT you made
- probably was not unique.
+ This means the query has returned several rows but the
+ variables specified are not arrays. The
+ SELECT command was not unique.
@@ -297,11 +274,11 @@ struct sqlca
-204, Not correctly formatted int type: %s line %d.
- This means that the host variable is of an int type and the field
- in the Postgres database is of another type and
- contains a value that cannot be interpreted as an int.
- The library uses strtol
- for this conversion.
+ This means the host variable is of type int and
+ the field in the Postgres database
+ is of another type and contains a value that cannot be
+ interpreted as an int. The library uses
+ strtol() for this conversion.
@@ -310,11 +287,12 @@ struct sqlca
-205, Not correctly formatted unsigned type: %s line %d.
- This means that the host variable is of an unsigned int type and
- the field in the Postgres database is of another
- type and contains a
- value that cannot be interpreted as an unsigned int. The library
- uses strtoul for this conversion.
+ This means the host variable is of type unsigned
+ int and the field in the
+ Postgres database is of another type
+ and contains a value that cannot be interpreted as an
+ unsigned int. The library uses
+ strtoul() for this conversion.
@@ -323,11 +301,11 @@ struct sqlca
-206, Not correctly formatted floating point type: %s line %d.
- This means that the host variable is of a float type and
- the field in the Postgres database is of another
- type and contains a
- value that cannot be interpreted as an float. The library
- uses strtod for this conversion.
+ This means the host variable is of type float and
+ the field in the Postgres database
+ is of another type and contains a value that cannot be
+ interpreted as a float. The library uses
+ strtod() for this conversion.
@@ -336,9 +314,9 @@ struct sqlca
-207, Unable to convert %s to bool on line %d.
- This means that the host variable is of a bool type and
- the field in the Postgres database is neither 't'
- nor 'f'.
+ This means the host variable is of type bool and
+ the field in the Postgres database
+ is neither 't' nor 'f'.
@@ -357,7 +335,7 @@ struct sqlca
-220, No such connection %s in line %d.
- The program tries to access a connection that does not exist.
+ The program tried to access a connection that does not exist.
@@ -366,7 +344,8 @@ struct sqlca
-221, Not connected in line %d.
- The program tries to access a connection that does exist but is not open.
+ The program tried to access a connection that does exist but is
+ not open.
@@ -395,7 +374,7 @@ struct sqlca
-401, Error in transaction processing line %d.
- Postgres signalled to us that we cannot start,
+ Postgres signaled that we cannot start,
commit or rollback the transaction.
@@ -415,7 +394,7 @@ struct sqlca
This is a "normal" error that tells you that what you are quering cannot
- be found or we have gone through the cursor.
+ be found or you are at the end of the cursor.
@@ -430,29 +409,28 @@ struct sqlca
- What will never be included and why or what cannot be done with this
- concept.
+ What will never be included and why it cannot be done.
- Oracle's single tasking possibility
+ Oracle's single tasking
- Oracle version 7.0 on AIX 3 uses the OS-supported locks on the shared
- memory segments and allows the application designer to link an
- application in a so called single tasking way. Instead of starting one
- client process per application process both the database part and the
- application part is run in the same process. In later versions of Oracle
- this is no longer supported.
+ Oracle version 7.0 on AIX 3 uses OS-supported locks in shared
+ memory that allow an application designer to link an application
+ in a "single tasking" way. Instead of starting one client
+ process per application process, both the database part and the
+ application part run in the same process. In later versions of
+ Oracle this is no longer supported.
This would require a total redesign of the
- Postgres access model and
- that effort can not justify the performance gained.
+ Postgres access model and the
+ performance gain does not justify the effort.
@@ -464,37 +442,38 @@ struct sqlca
Porting From Other RDBMS Packages
- The design of ecpg follows SQL standard. So
- porting from a standard RDBMS should not be a problem. Unfortunately there
- is no such thing as a standard RDBMS. So ecpg
- also tries to understand syntax additions as long as they do not create
- conflicts with the standard.
+ The design of ecpg follows the SQL
+ standard. Porting from a standard RDBMS should not be a problem.
+ Unfortunately there is no such thing as a standard RDBMS. Therefore
+ ecpg tries to understand syntax
+ extensions as long as they do not create conflicts with the
+ standard.
- The following list shows all the known incompatibilities. If you find one
- not listed please notify
- Michael Meskes.
- Note, however, that we list only incompatibilities from
- a precompiler of another RDBMS to ecpg and not
- additional ecpg features that these RDBMS do not
- have.
+ The following list shows all the known incompatibilities. If you
+ find one not listed please notify Michael Meskes. Note, however, that
+ we list only incompatibilities from a precompiler of another RDBMS
+ to ecpg and not
+ ecpg features that these RDBMS do not
+ support.
- Syntax of FETCH command
+ Syntax of FETCH
- The standard syntax of the FETCH command is:
+ The standard syntax for FETCH is:
- FETCH [direction] [amount] IN|FROM cursor name.
+ FETCH [direction] [amount] IN|FROM cursor.
ORACLE, however, does not use the keywords IN
- resp. FROM. This feature cannot be added since it would create parsing
+ or FROM. This feature cannot be added since it would create parsing
conflicts.
@@ -507,39 +486,35 @@ struct sqlca
For the Developer
- This section is for those who want to develop the
- ecpg interface. It
- describes how the things work. The ambition is to make this section
- contain things for those that want to have a look inside and the section
- on How to use it should be enough for all normal questions.
-
- So, read this before looking at the internals of the
- ecpg. If
- you are not interested in how it really works, skip this section.
+ This section explain how ecpg
+ works internally. It contains valuable information to help users
+ understand how to use ecpg.
ToDo List
- This version the preprocessor has some flaws:
+ This version of the preprocessor has some flaws:
Library functions
- to_date et al. do not exists. But then Postgres
- has some good conversion routines itself. So you probably won't miss these.
+ to_date et al. does not exist. However,
+ Postgres has some good conversion
+ routines so you probably won't miss them.
- Structures ans unions
+ Structures and unions
- Structures and unions have to be defined in the declare section.
+ Structures and unions have to be defined in the
+ declare> section.
@@ -580,8 +555,11 @@ struct sqlca
message 'no data found'
- The error message for "no data" in an exec sql insert select from statement
- has to be 100.
+ The error message for "no data" in:
+
+exec sql insert select from statement
+
+ has to be 100>.
@@ -590,8 +568,9 @@ struct sqlca
sqlwarn[6]
- sqlwarn[6] should be 'W' if the PRECISION or SCALE value specified in a SET
- DESCRIPTOR statement will be ignored.
+ sqlwarn[6] should be W> if the PRECISION>
+ or SCALE> value specified in a SET
+ DESCRIPTOR> statement was ignored.
@@ -603,49 +582,50 @@ struct sqlca
The Preprocessor
- The first four lines written to the output are constant additions by ecpg.
- These are two comments and two include lines necessary for the interface to the
- library.
+ The first four lines written by ecpg to the output are fixed lines.
+ Two are comments and two are include lines necessary to interface
+ to the library.
- Then the preprocessor works in one pass only, reading the input file and
- writing to the output as it goes along. Normally it just echoes
- everything to the output without looking at it further.
+ Then the preprocessor reads through the file and writes output.
+ Normally it just echoes everything to the output.
- When it comes to an EXEC SQL statements it intervenes and
- changes them depending on what it is.
- The EXEC SQL statement can be one of these:
+ When it sees an EXEC SQL statement, it
+ intervenes and changes it. The EXEC SQL
+ statement can be one of these:
Declare sections
- Declare sections begins with
+ Declare> sections begin with:
exec sql begin declare section;
- and ends with
+ and end with:
exec sql end declare section;
- In the section only variable declarations are allowed. Every variable
- declare within this section is also entered in a list of variables
- indexed on their name together with the corresponding type.
+ In this section only variable declarations are allowed. Every
+ variable declared within this section is stored in a list
+ of variables indexed by name together with its corresponding
+ type.
- In particular the definition of a structure or union also has to be listed
- inside a declare section. Otherwise ecpg cannot
- handle these types since it simply does not know the definition.
+ In particular the definition of a structure or union also must
+ be listed inside a declare> section. Otherwise
+ ecpg cannot handle these types since
+ it does not know the definition.
- The declaration is echoed to the file to make the variable a normal
- C-variable also.
+ The declaration is also echoed to the file to make it a normal
+ C variable.
@@ -654,7 +634,7 @@ exec sql end declare section;
VARCHAR var[180];
- is converted into
+ is converted into:
struct varchar_var { int len; char arr[180]; } var;
@@ -670,16 +650,17 @@ struct varchar_var { int len; char arr[180]; } var;
exec sql include filename;
- Note that this is NOT the same as
+ Note that this is NOT the same as:
#include <filename.h>
- Instead the file specified is parsed by ecpg
- itself. So the contents of the specified file is included in the resulting C
- code. This way you are able to specify EXEC SQL commands in an include file.
+ Instead the file specified is parsed by
+ ecpg so the contents of the file are
+ included in the resulting C code. This way you are able to
+ specify EXEC SQL commands in an include file.
@@ -763,8 +744,9 @@ exec sql connect to connection target;
- Finally the userid and the password. Each may be a constant text, a
- character variable or a chararcter string.
+
+ Finally, the userid and password may be a constant text, a
+ character variable, or a character string.
@@ -773,7 +755,7 @@ exec sql connect to connection target;
Disconnect statements
- A disconnect statement looks loke:
+ A disconnect statement looks like:
exec sql disconnect [connection target];
@@ -805,7 +787,6 @@ exec sql disconnect [connection target];
-
Open cursor statement
@@ -814,7 +795,9 @@ exec sql disconnect [connection target];
exec sql open cursor;
- and is ignore and not copied from the output.
+ and is not copied to the output. Instead, the cursor's
+ DECLARE> command is used because it opens the cursor
+ as well.
@@ -823,14 +806,10 @@ exec sql open cursor;
Commit statement
- A commit statement looks like
+ A commit statement looks like:
exec sql commit;
- and is translated on the output to
-
-ECPGcommit(__LINE__);
-
@@ -839,52 +818,50 @@ ECPGcommit(__LINE__);
Rollback statement
- A rollback statement looks like
+ A rollback statement looks like:
exec sql rollback;
- and is translated on the output to
-
-ECPGrollback(__LINE__);
-
-
Other statements
- Other SQL statements are other statements that start with
- exec sql and ends with ;.
- Everything inbetween is treated
- as an SQL statement and parsed for variable substitution.
+ Other SQL statements are used by
+ starting with exec sql and ending with
+ ;. Everything in between is treated as an
+ SQL statement and parsed for variable
+ substitution.
- Variable substitution occur when a symbol starts with a colon
- (:). Then a variable with that name is looked for among
- the variables that were previously declared within a declare section and
- depending on the variable being for input or output the pointers to the
- variables are written to the output to allow for access by the function.
+ Variable substitution occurs when a symbol starts with a colon
+ (:). The variable with that name is looked
+ up among the variables that were previously declared within a
+ declare> section. Depending on whether the variable is
+ being use for input or output, a pointer to the variable is
+ output to allow access by the function.
- For every variable that is part of the SQL request
- the function gets another ten arguments:
+ For every variable that is part of the SQL
+ query, the function gets other arguments:
The type as a special symbol.A pointer to the value or a pointer to the pointer.The size of the variable if it is a char or varchar.
- Number of elements in the array (for array fetches).
- The offset to the next element in the array (for array fetches)
+ The number of elements in the array (for array fetches).
+ The offset to the next element in the array (for array fetches).The type of the indicator variable as a special symbol.A pointer to the value of the indicator variable or a pointer to the pointer of the indicator variable.0.Number of elements in the indicator array (for array fetches).
- The offset to the next element in the indicator array (for array fetches)
+ The offset to the next element in the indicator array
+ (for array fetches).
@@ -929,10 +906,9 @@ ECPGdo(__LINE__, NULL, "select res from mytable where index = ? ",
ECPGt_int,&(result),1L,1L,sizeof(int),
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EORT);
#line 147 "foo.pgc"
-
- (the indentation in this manual is added for readability and not
- something that the preprocessor can do.)
+ (The indentation in this manual is added for readability and not
+ something the preprocessor does.)
@@ -940,11 +916,11 @@ ECPGdo(__LINE__, NULL, "select res from mytable where index = ? ",
The Library
- The most important function in the library is the ECPGdo
- function. It takes a variable amount of arguments. Hopefully we will not run
- into machines with limits on the amount of variables that can be
- accepted by a vararg function. This could easily add up to 50 or so
- arguments.
+ The most important function in the library is
+ ECPGdo. It takes a variable number of
+ arguments. Hopefully there are no computers that limit the
+ number of variables that can be accepted by a varargs() function. This
+ can easily add up to 50 or so arguments.
@@ -955,7 +931,7 @@ ECPGdo(__LINE__, NULL, "select res from mytable where index = ? ",
A line number
- This is a line number for the original line used in error messages only.
+ This is a line number of the original line; used in error messages only.
@@ -964,11 +940,11 @@ ECPGdo(__LINE__, NULL, "select res from mytable where index = ? ",
A string
- This is the SQL request that is to be issued.
- This request is modified
- by the input variables, i.e. the variables that where not known at
- compile time but are to be entered in the request. Where the variables
- should go the string contains ";".
+ This is the SQL query that is to be issued.
+ It is modified by the input variables, i.e. the variables that
+ where not known at compile time but are to be entered in the
+ query. Where the variables should go the string contains
+ ?.
@@ -977,7 +953,7 @@ ECPGdo(__LINE__, NULL, "select res from mytable where index = ? ",
Input variables
- As described in the section about the preprocessor every input variable
+ As described in the section about the preprocessor, every input variable
gets ten arguments.
@@ -996,7 +972,7 @@ ECPGdo(__LINE__, NULL, "select res from mytable where index = ? ",
Output variables
- As described in the section about the preprocessor every input variable
+ As described in the section about the preprocessor, every input variable
gets ten arguments. These variables are filled by the function.
@@ -1014,16 +990,14 @@ ECPGdo(__LINE__, NULL, "select res from mytable where index = ? ",
- All the SQL statements are performed in one transaction
- unless you issue a commit transaction. To get this auto-transaction going
- the first statement or the first after statement after a commit or rollback
- always begins a transaction. To disable this feature per default use the
- option on the commandline.
+ All SQL statements are performed in one
+ transaction unless you issue a commit transaction. To accomplish
+ this auto-transaction behavior, the first statement and the first
+ statement after a commit or rollback always begins a new transaction. To
+ disable this feature, use the command-line
+ option.
-
- To be completed: entries describing the other entries.
-
diff --git a/src/interfaces/jdbc/org/postgresql/errors_it.properties b/src/interfaces/jdbc/org/postgresql/errors_it.properties
index 9b7f7cdd69b..e6ea08b6dd8 100644
--- a/src/interfaces/jdbc/org/postgresql/errors_it.properties
+++ b/src/interfaces/jdbc/org/postgresql/errors_it.properties
@@ -1,17 +1,18 @@
# This is the italian version of some errors. Errors not in this file
# are handled by the parent errors.properties file.
#
-# Daniele Arduini
-# Wed Aug 9 12:18:31 CEST 2000
+# Daniele Arduini >
+# Tue Aug 21 09:26:47 CEST 2001
#
+postgresql.drv.version:Si è verificato un errore interno. Si consiglia di ricompilare il driver.
postgresql.con.auth:L'autenticazione di tipo {0} non è supportata. Verificare che nel file di configurazione pg_hba.conf sia presente l'indirizzo IP o la sotto-rete del client, e che lo schema di autenticazione utilizzato sia supportato dal driver.
postgresql.con.authfail:Si è verificato un errore durante la richiesta di autenticazione.
postgresql.con.call:I ``Callable Statements'' non sono supportati al momento.
postgresql.con.creobj:Fallita la creazione dell'oggetto per {0} {1}
postgresql.con.failed:Il tentativo di connessione è fallito perché {0}
-#postgresql.con.fathom:Unable to fathom update count {0}
+postgresql.con.fathom:Impossibile il conteggio di ``update'' {0}
postgresql.con.garbled:Ricevuti dati incomprensibili.
-postgresql.con.ioerror:Si è verificato un errore di I/O nella spedizione di dati al backend - {0}
+postgresql.con.ioerror:Si è verificato un errore di I/O nella spedizione di dati al processo server - {0}
postgresql.con.kerb4:L'autenticazione di tipo ``Kerberos 4'' non è supportata da questo driver.
postgresql.con.kerb5:L'autenticazione di tipo ``Kerberos 5'' non è supportata da questo driver.
postgresql.con.multres:Impossibile gestire gruppi multipli di risultati.
@@ -28,47 +29,50 @@ postgresql.con.user:La propriet
postgresql.fp.error:La chiamata a FastPath ha restituito {0}
postgresql.fp.expint:Chiamata Fastpath {0} - Nessun risultato restituito mentre ci si aspettava un intero.
postgresql.fp.protocol:Errore nel protocollo FastPath: {0}
-postgresql.fp.send:Fallita la spedizione della chiamata fastpath {0} {1}
+postgresql.fp.send:Fallito l'invio della chiamata fastpath {0} {1}
postgresql.fp.unknown:La funzione fastpath {0} è sconosciuta.
postgresql.geo.box:Fallita la conversione di un ``box'' - {0}
postgresql.geo.circle:Fallita la conversione di un ``circle'' - {0}
postgresql.geo.line:Fallita la conversione di una ``line'' - {0}
postgresql.geo.lseg:Fallita la conversione di un ``lseg'' - {0}
-postgresql.geo.path:Impossibile stabilire se il ``path'' è aperto o chiuso.
+postgresql.geo.path:Impossibile stabilire se il percorso è aperto o chiuso.
postgresql.geo.point:Fallita la conversione di un ``point'' - {0}
-postgresql.jvm.version:Il file ``postgresql.jar'' non contiene le classi JDBC corrette per questa JVM. Provare a ricompilarle. Se il problema persiste, tentare di forzare la versione fornendola nella linea di comando con l'opzione -Djava.version=1.1 or -Djava.version=1.2\nL'eccezione ricevuta è stata {0}
+postgresql.jvm.version:Il file ``postgresql.jar'' non contiene le classi JDBC corrette per questa JVM. Provare a ricompilarle. Se il problema persiste, tentare di forzare la versione fornendo sulla linea di comando l'opzione -Djava.version=1.1 oppure -Djava.version=1.2\nL'eccezione ricevuta è stata {0}
postgresql.lo.init:Inizializzazione di LargeObject API fallita.
postgresql.money:Fallita la conversione di un ``money'' - {0}.
+postgresql.noupdate:Questo ResultSet non è modificabile.
+postgresql.notsensitive:Questo ResultSet non risente delle modifiche in tempo reale dopo che la query è stata eseguita.
+postgresql.psqlnotimp:Il processo server al momento non supporta questa funzionalità.
postgresql.prep.is:InputStream come parametro non è supportato
postgresql.prep.param:Nessun valore specificato come parametro {0}.
-postgresql.prep.range:Indice di parametro fuori dall'intervallo.
+postgresql.prep.range:Indice del parametro fuori dall'intervallo ammissibile.
postgresql.prep.type:Valore di tipo sconosciuto.
-postgresql.res.badbigdec:Cattivo BigDecimal {0}
-postgresql.res.badbyte:Cattivo Byte {0}
-postgresql.res.baddate:Cattivo Date Format a {0} in {1}
-postgresql.res.baddouble:Cattivo Double {0}
-postgresql.res.badfloat:Cattivo Float {0}
-postgresql.res.badint:Cattivo Integer {0}
-postgresql.res.badlong:Cattivo Long {0}
-postgresql.res.badshort:Cattivo Short {0}
-postgresql.res.badtime:Cattivo Time {0}
-postgresql.res.badtimestamp:Cattivo Timestamp Format a {0} in {1}
+postgresql.res.badbigdec:BigDecimal non corretto {0}
+postgresql.res.badbyte:Byte non corretto {0}
+postgresql.res.baddate:Date Format non corretto a {0} in {1}
+postgresql.res.baddouble:Double non corretto {0}
+postgresql.res.badfloat:Float non corretto {0}
+postgresql.res.badint:Integer non corretto {0}
+postgresql.res.badlong:Long non corretto {0}
+postgresql.res.badshort:Short non corretto {0}
+postgresql.res.badtime:Time non corretto {0}
+postgresql.res.badtimestamp:Timestamp Format non corretto a {0} in {1}
postgresql.res.colname:Colonna denominata {0} non trovata.
-postgresql.res.colrange:Indice di colonna fuori dall'intervallo.
-postgresql.serial.interface:Impossibile serializzare una interfaccia.
+postgresql.res.colrange:Indice di colonna fuori dall'intervallo ammissibile.
+postgresql.serial.interface:Impossibile serializzare un'interfaccia.
postgresql.serial.namelength:La lunghezza dei nomi per Class & Package non può essere superiore a 32 caratteri. {0} è di {1} caratteri.
postgresql.serial.noclass:Nessuna classe trovata per {0}.
-postgresql.serial.table:La tabella per {0} non è nel database. Contattare il DBA, visto che il database è in uno stato incosistente.
+postgresql.serial.table:La tabella per {0} non è nel database. Contattare l'amministratore del DB, visto che il database è in uno stato incosistente.
postgresql.serial.underscore:Il nome di una classe non può contenere il carattere ``_''. E` stato fornito {0}.
postgresql.stat.batch.empty:La sequenza di operazioni è vuota. Non c'è niente da eseguire.
postgresql.stat.batch.error:L'operazione {0} {1} della sequenza è stata annullata.
postgresql.stat.maxfieldsize:Fallito un tentativo a setMaxFieldSize() - verrà utilizzato il valore predefinito a tempo di compilazione.
postgresql.stat.noresult:Nessun risultato è stato restituito dalla query.
-postgresql.stat.result:Un risultato è stato restituito dallo statement, quando ci si aspettava nulla.
+postgresql.stat.result:Un risultato è stato restituito dallo statement, quando non ci si aspettava nulla.
postgresql.stream.eof:Il backend ha interrotto la connessione. Probabilmente la tua azione ha causato la sua uscita.
postgresql.stream.flush:Si è verificato un errore di I/O mentre si svuotava il buffer d'uscita - {0}
postgresql.stream.ioerror:Si è verificato un errore di I/O mentre si leggevano dati dal backend - {0}
postgresql.stream.toomuch:Troppi dati ricevuti.
-postgresql.unusual:Qualcosa di insolito si è verificato causando il fallimento del driver. Per favore riferire allo sviluppatore questa eccezione: {0}
+postgresql.unusual:Qualcosa di insolito si è verificato causando il fallimento del driver. Per favore riferire all'autore del driver questa eccezione: {0}
postgresql.unimplemented:Questo metodo non è stato ancora implementato.
postgresql.unexpected:Un risultato inaspettato è stato ricevuto dalla query.