Re: COPY support implemented

Поиск
Список
Период
Сортировка
От Kris Jurka
Тема Re: COPY support implemented
Дата
Msg-id Pine.LNX.4.33.0401121339270.14463-100000@leary.csoft.net
обсуждение исходный текст
Ответ на Re: COPY support implemented  (Per-Olof Noren <pelle@alma.nu>)
Список pgsql-jdbc

On 12 Jan 2004, Per-Olof Noren wrote:

> Hi Kris,
>
> On Tue, 2003-12-30 at 09:25, Kris Jurka wrote:
> > With the introduction of the V3 protocol in 7.4 it is now possible to
> > support the COPY protocol in the JDBC driver.  Before it was impossible to
> > recover from errors and the Connection had to be abandoned.  This patch
> > implements support for COPY based on the API proposed by Michael
> > Adler's original patch of about a year ago.
>
> This is great news, as I'm currently working on a project that could
> benefit from being able to run copy on a client machine.
> I have patched the driver from the 7.4.1 src distro with the patch and
> it compiled successfully.
>
> After giving it a spin (which actually failed due to another reason,
> more on that below) I have a little suggestion.
>
> Add CopyManager.copyIn(String tName, InputStream is, String delimiter);
>
> Or add Javadoc that clearly states that the query
> *MUST* be using "FROM STDIN" or the server will start looking locally
> for the file, giving an FileNotException.

I'm working on a new API that is more flexible in this and a number of
other regards.  Something like this will probably get folded in.

> Ok, now to my litte trouble.
> The database is encoded in LATIN1 running on pgsql 7.4.1.
> I'm running the above code on a different machine running linux using
> locale "sv_SE". The file I'm trying to import is encoded in ISO-8859-1.
> Then running the above code I get the following error:
> org.postgresql.util.PSQLException: ERROR: could not convert UTF-8
> character 0x00f6 to ISO8859-1
>
> This must be the JVM's encoding being set to UTF-8, right?
> Or do I need to specify the encoding in the jdbc url or something?
>

As it stands now the JVM's encoding must be UTF-8 or you must do the
conversion to UTF-8 on your own.  This is not good, but for the first pass
I wanted to focus on the copy protocol itself and left a number of user
interface features out.

The next version of this will allow you to specify some kind of recoding
to be done.  Additionally it will provide support for a much friendlier
interface than an I/O Stream.  Based on a suggestion from Oliver Jowett
I'm going to add an interface based on SQLInput/SQLOutput so an object can
easily read/write itself directly from/to a copy command so there isn't a
need to persist things to a Stream if your application doesn't want to.

Kris Jurka


В списке pgsql-jdbc по дате отправления:

Предыдущее
От: ritchie
Дата:
Сообщение: Re: COPY support implemented
Следующее
От: "Waldomiro"
Дата:
Сообщение: I'm losing the data from a ResultSet