Обсуждение: st.executeQuery("SELECT NEXTVAL('seq_suporte') AS valor");
Hi Folks!
I need some help.
See this code parcel:
...
...
ResultSet rs =
st.executeQuery("SELECT NEXTVAL('seq_suporte') AS valor");
...
...
It produces: java.lang.NullPointerException
What is problem?
I am used to do SELECT commands like this with any table I´ve
created so far,
but with this sequence no data comes from.
I am uncapable of guessing what can be.
I´d appreciate suggestions.
Below there is a short program that reproduces this case.
Thanks!
-----------------------------------------------------------------
import java.sql.*;
class pgdbping
{
public static void main(String args[])
{
try
{
Class.forName("org.postgresql.Driver");
Connection con = DriverManager.getConnection(
"jdbc:postgresql://10.10.96.147:5432/suporte",
"suporte", "suporte");
System.out.println("Connection successful!!");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(
"SELECT NEXTVAL('seq_suporte') AS valor");
int novoCodigoSuporte =
rs.getInt("valor");
st.close();
con.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
+--------------------------------------------------------+
| _ Elielson Fontanezi (elielsonf@prodam.sp.gov.br) |
| °v° PRODAM - VSE Department +55 11 5080-9283 |
| /(_)\ May your trails be crooked, winding, lonesome, |
| ^ ^ dangerous, leading to the most amazing view. |
| May your mountains rise into and above the clouds. |
+--------------------------------------------------------+
You are not doing a rs.next() before rs.getInt().
Kris Jurka
On Mon, 3 Feb 2003, Elielson Fontanezi wrote:
> Hi Folks!
>
> I need some help.
> See this code parcel:
>
> ...
> ...
> ResultSet rs =
> st.executeQuery("SELECT NEXTVAL('seq_suporte') AS valor");
> ...
> ...
>
> It produces: java.lang.NullPointerException
>
> What is problem?
> I am used to do SELECT commands like this with any table I�ve
> created so far,
> but with this sequence no data comes from.
> I am uncapable of guessing what can be.
>
> I�d appreciate suggestions.
>
> Below there is a short program that reproduces this case.
>
> Thanks!
>
> -----------------------------------------------------------------
> import java.sql.*;
>
> class pgdbping
> {
> public static void main(String args[])
> {
> try
> {
> Class.forName("org.postgresql.Driver");
>
> Connection con = DriverManager.getConnection(
> "jdbc:postgresql://10.10.96.147:5432/suporte",
> "suporte", "suporte");
>
> System.out.println("Connection successful!!");
>
> Statement st = con.createStatement();
>
> ResultSet rs = st.executeQuery(
> "SELECT NEXTVAL('seq_suporte') AS valor");
>
> int novoCodigoSuporte =
> rs.getInt("valor");
>
> st.close();
> con.close();
> }
> catch(Exception e)
> {
> e.printStackTrace();
> }
> }
> }
>
>
> +--------------------------------------------------------+
> | _ Elielson Fontanezi (elielsonf@prodam.sp.gov.br) |
> | �v� PRODAM - VSE Department +55 11 5080-9283 |
> | /(_)\ May your trails be crooked, winding, lonesome, |
> | ^ ^ dangerous, leading to the most amazing view. |
> | May your mountains rise into and above the clouds. |
> +--------------------------------------------------------+
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/users-lounge/docs/faq.html
>
nextval ('sequence') is going to increment your sequence.... Are you sure
you dont want currval ??? Also -- Have you granted select permissions on the
sequence to whatever user your program is running as ???
GP
"Elielson Fontanezi" <ElielsonF@prodam.sp.gov.br> wrote in message
news:A799F7647794D311924A005004ACEA9709699311@cprodamibs249.prodam...
> Hi Folks!
>
> I need some help.
> See this code parcel:
>
> ...
> ...
> ResultSet rs =3D=20
> st.executeQuery("SELECT NEXTVAL('seq_suporte') AS valor");
> ...
> ...
>
> It produces: java.lang.NullPointerException
>
> What is problem?
> I am used to do SELECT commands like this with any table I=B4ve
> created so far,
> but with this sequence no data comes from.
> I am uncapable of guessing what can be.
>
> I=B4d appreciate suggestions.
>
> Below there is a short program that reproduces this case.
>
> Thanks!
>
> -----------------------------------------------------------------
> import java.sql.*;
>
> class pgdbping
> {
> public static void main(String args[])
> {
> try
> {
> Class.forName("org.postgresql.Driver");
>
> Connection con =3D DriverManager.getConnection(
> "jdbc:postgresql://10.10.96.147:5432/suporte",
> "suporte", "suporte");
>
> System.out.println("Connection successful!!");
>
> Statement st =3D con.createStatement();
> =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20
> ResultSet rs =3D st.executeQuery(
> "SELECT NEXTVAL('seq_suporte') AS valor");
>
> int novoCodigoSuporte =3D
> rs.getInt("valor");
>
> st.close();
> con.close();
> }
> catch(Exception e)
> {
> e.printStackTrace();
> }
> }
> }
>
>
> +--------------------------------------------------------+
> | _ Elielson Fontanezi (elielsonf@prodam.sp.gov.br) |
> | =B0v=B0 PRODAM - VSE Department +55 11 5080-9283 |
> | /(_)\ May your trails be crooked, winding, lonesome, |
> | ^ ^ dangerous, leading to the most amazing view. |
> | May your mountains rise into and above the clouds. |
> +--------------------------------------------------------+
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster