Re: error when using move, any suggestions?

Поиск
Список
Период
Сортировка
От Noel
Тема Re: error when using move, any suggestions?
Дата
Msg-id 3E0268CF.5010505@med.monash.edu.au
обсуждение исходный текст
Ответ на Re: error when using move, any suggestions?  (Dave Cramer <Dave@micro-automation.net>)
Ответы Re: error when using move, any suggestions?  (Dave Cramer <Dave@micro-automation.net>)
Список pgsql-jdbc
Dave,
Thanks for taking the time to look at the problem. I tried the
stmt.executeUpdate. It also gave the same error.

Once again, thanks
Noel

>Noel,
>
>Ok, sorry, jdbc is getting in the way here. I haven't got time right
>now, so if you can't wait try changing the stmt.execute to
>stmt.executeUpdate, and see what happens. I will try to figure it out
>later though.
>
>Dave
>On Wed, 2002-12-18 at 23:51, Noel wrote:
>
>
>>Hi Dave,
>>
>>I modified the small program to reflect the statement I performed in psql:
>>
>>import blastDb.*;
>>import java.sql.*;
>>import java.io.*;
>>import java.util.*;
>>import java.lang.*;
>>
>>public class TestFetchSize
>>{
>>    public static void main(String[] args)
>>    {
>>        try
>>        {
>>            BlastDB db = new BlastDB();
>>
>>            Statement stmt = db.connection.createStatement();
>>            int counte = 0;
>>            stmt.execute("begin work");
>>            stmt.execute("declare test cursor for select id from region
>>where protein_database = 1");
>>            ResultSet rs;
>>            System.out.println("here1");
>>            stmt.execute("move forward 99 in test");
>>            System.out.println("here2");
>>            while(stmt.execute("fetch forward 2 in test"))
>>            {
>>                rs = stmt.getResultSet();
>>                if (rs.next())
>>                {
>>                    ++counte;
>>                    while (rs.next())
>>                    {
>>                        ++counte;
>>                    }
>>                }
>>                else
>>                    break;
>>
>>            }
>>
>>            rs = stmt.getResultSet();
>>            if (rs.next())
>>                System.out.println("ok");
>>            else
>>                System.out.println("NO");
>>            System.out.println(counte);
>>            stmt.execute("end work");
>>        }
>>        catch (Exception e)
>>        {
>>            e.printStackTrace();
>>            System.out.println(e.getMessage());
>>        }
>>    }
>>}
>>
>>This is the out put, the same error as before :(
>>here1
>>Unable to fathom update count MOVE
>>        at
>>org.postgresql.core.QueryExecutor.receiveCommandStatus(QueryExecutor.java:182)
>>        at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:80)
>>        at org.postgresql.Connection.ExecSQL(Connection.java:398)
>>        at org.postgresql.jdbc2.Statement.execute(Statement.java:130)
>>        at TestFetchSize.main(TestFetchSize.java:21)
>>Unable to fathom update count MOVE
>>
>>So the programe is not moving beyound the move statement.
>>
>>Many thanks
>>Noel
>>
>>P.S. Is this sim to the INSERT problem with the sim error message?
>>
>>
>>Dave Cramer wrote:
>>
>>
>>
>>>Noel,
>>>
>>>Well, your sql in the driver was fetch forward 2000 in test, does that
>>>work?
>>>
>>>It shouldn't be a driver error, the driver just passes sql through.
>>>
>>>Dave
>>>On Wed, 2002-12-18 at 20:51, Noel Faux wrote:
>>>
>>>
>>>
>>>
>>>>Hi Dave,
>>>>
>>>>It works fine in psql:
>>>>blast=# begin;
>>>>BEGIN
>>>>blast=# declare test cursor for select id from region where
>>>>protein_database = 1;
>>>>SELECT
>>>>blast=# move forward 99 in test;
>>>>MOVE
>>>>blast=# fetch forward 2 in test;
>>>>  id
>>>>--------
>>>>486175
>>>>481881
>>>>(2 rows)
>>>>
>>>>Is this a driver error?
>>>>Thanks for your reply
>>>>Cheers
>>>>Noel
>>>>
>>>>Noel Faux
>>>>Department of Biochemistry and Molecluar Biology
>>>>Monash University
>>>>Clayton 3168
>>>>Victoria
>>>>Australia
>>>>
>>>>----- Original Message -----
>>>>From: Dave Cramer <Dave@micro-automation.net>
>>>>Date: Wednesday, December 18, 2002 9:43 pm
>>>>Subject: Re: [JDBC] error when using move, any suggestions?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>Noel,
>>>>>
>>>>>What do you get from the server when you try the same commands in
>>>>>psql?
>>>>>I just tried it and it works fine?
>>>>>
>>>>>test=# begin;
>>>>>BEGIN
>>>>>test=# declare test cursor for select id from address ;
>>>>>DECLARE CURSOR
>>>>>test=# move forward 99 in test;
>>>>>MOVE 1
>>>>>test=# fetch forward 2000 in test;
>>>>>id
>>>>>----
>>>>>(0 rows)
>>>>>
>>>>>Dave
>>>>>
>>>>>On Wed, 2002-12-18 at 00:30, Noel wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Hi all,
>>>>>>I'm new to postgreSQL.
>>>>>>I wrote a little test program to learn how to use fetch and move
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>postgreSQL.
>>>>>>
>>>>>>import blastDb.*;
>>>>>>import java.sql.*;
>>>>>>import java.io.*;
>>>>>>import java.util.*;
>>>>>>import java.lang.*;
>>>>>>
>>>>>>public class TestFetchSize
>>>>>>{
>>>>>>    public static void main(String[] args)
>>>>>>    {
>>>>>>            try
>>>>>>            {
>>>>>>                    BlastDB db = new BlastDB();
>>>>>>
>>>>>>                    Statement stmt =db.connection.createStatement();
>>>>>>                    int counte = 0;
>>>>>>                    stmt.execute("begin work");
>>>>>>                    stmt.execute("declare test cursor for select id
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>from region where
>>>>
>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>protein_database = 1");
>>>>>>                    ResultSet rs;
>>>>>>                    stmt.execute("move forward 99 in test");
>>>>>>                    while(stmt.execute("fetch forward 2000 in test"))
>>>>>>                    {
>>>>>>                            rs = stmt.getResultSet();
>>>>>>                            if (rs.next())
>>>>>>                            {
>>>>>>                                    ++counte;
>>>>>>                                    while (rs.next())
>>>>>>                                    {
>>>>>>                                            ++counte;
>>>>>>                                    }
>>>>>>                            }
>>>>>>                            else
>>>>>>                                    break;
>>>>>>
>>>>>>                    }
>>>>>>                    System.out.println(counte);
>>>>>>                    stmt.execute("end work");
>>>>>>            }
>>>>>>            catch (Exception e)
>>>>>>            {
>>>>>>                    e.printStackTrace();
>>>>>>                    System.out.println(e.getMessage());
>>>>>>            }
>>>>>>    }
>>>>>>}
>>>>>>
>>>>>>It compiles ok, however when run i get this message:
>>>>>>Unable to fathom update count MOVE
>>>>>>at
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>org.postgresql.core.QueryExecutor.receiveCommandStatus(QueryExecutor.java:182)>
>>>>at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:80)
>>>>
>>>>
>>>>
>>>>
>>>>>>at org.postgresql.Connection.ExecSQL(Connection.java:398)
>>>>>>at org.postgresql.jdbc2.Statement.execute(Statement.java:130)
>>>>>>at TestFetchSize.main(TestFetchSize.java:25)
>>>>>>Unable to fathom update count MOVE
>>>>>>
>>>>>>I've search the web and the archives, and the only thing close
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>is the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>thread about a sim problem with INSERT:
>>>>>>"Basically the driver was storing the oid in an int.  The value
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>you have
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>is overflowing the value allowed for a signed int.
>>>>>>
>>>>>>thanks,
>>>>>>--Barry "
>>>>>>
>>>>>>Is this the same problem ?
>>>>>>Using  7.4 divers with JDBC3 support.
>>>>>>
>>>>>>Cheers
>>>>>>Noel
>>>>>>
>>>>>>
>>>>>>---------------------------(end of broadcast)--------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>-------
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>TIP 4: Don't 'kill -9' the postmaster
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>--
>>>>>Dave Cramer <Dave@micro-automation.net>
>>>>>
>>>>>
>>>>>---------------------------(end of broadcast)----------------------
>>>>>-----
>>>>>TIP 2: you can get off all lists at once with the unregister command
>>>>>  (send "unregister YourEmailAddressHere" to
>>>>>majordomo@postgresql.org)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>---------------------------(end of broadcast)---------------------------
>>>>TIP 6: Have you searched our list archives?
>>>>
>>>>http://archives.postgresql.org
>>>>
>>>>
>>>>
>>>>



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

Предыдущее
От: Noel
Дата:
Сообщение: Re: error when using move, any suggestions?
Следующее
От: Dave Cramer
Дата:
Сообщение: Re: error when using move, any suggestions?