Erro ao acessar o banco

Pessoal to usando Postgree
tenho a classe de conexão com o j conector para ele
mais quando tento fazer um insert da o seguinte erro

org.postgresql.util.PSQLException: Não pode utilizar métodos de consulta que pegam uma consulta de um comando preparado. at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:329)

meu metodp que faz o insert

public void inserir_numeros(String numero,boolean download){ String sql = new String(); int x; x=-1; ControlaBanco Banco = new ControlaBanco(); x = numero.indexOf("."); if (x!=-1) { numero=numero.substring(1,x-1); } sql="insert into curriculo_lattes (chave,download) values ("+numero+","+download+")"; inserir.executa_sql(sql); //System.out.println(sql); }

Alguem sabe o q significa ?

3 coisas:

aszarael,

primeiramente, dá uma lidinha nos links que cv passou acima, você está precisando.

Segundo, troca

sql="insert into curriculo_lattes (chave,download) values ("+numero+","+download+")";

por

sql = "insert into curriculo_lattes (chave,download) values ('" + numero + "', '" + download + "')";

Terceiro, baixa esse material da caelum

na página 13 tem explicando os problemas em se escrever códigos SQL dessa forma. Ele auxilia na construção de códigos SQL mais robustos.

Uso da Interface PreparedStatement. Dá uma olhada, você não irá se arrepender.

Pessoal mudei a string para isso

  sql="insert into curriculo_lattes (chave,download) values ('"+numero+"',"+download+")";

Porem o erro que esta dando agora

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d80b893, pid=1852, tid=1848
#

Resolvi o problema pessoal, eu estava usando um preparedStatement, ao trocar por statmant tudo funcionou.