Erro em consulta do sql com valores não String! Urgente

4 respostas
N

Galera, to com um probleminha chato que tá atrapalhando o meu serviço pra caramba. Eu preciso fazer um select em uma tabela e passar duas restrições, mas o java fica dizendo que o valor é String e no banco ele pede um int? que diacho é isso? olha só o meu código:

public ResultSet selectDadosDaFicha(int codTipoFicha){		

StringBuffer sql = new StringBuffer();

sql.append(SELECT * FROM FIC_FICHA_DE_INSPECAO WHERE TFI_COD_TIPO_FICHA= " + codTipoFicha);

sql.append(” AND FIC_COD_FICHA = 1");

return driver.executeQuery(sql.toString());
}

eu quero passar que FIC_COD_FICHA = 1, já tentei de todos o jeitos: colocando o valor no string, passando como parâmetro etc e o erro persiste. Alguém pode me ajudar :sad:

ah, tá aqui o erro no eclipse:

superwaba.ext.xplat.sql.pdb.pdbx.PDBException: Value is not a String: superwaba.ext.xplat.sql.pdb.pdbx.NativeMethods4JDK$SQLValue@1db7df8

at superwaba.ext.xplat.sql.pdb.pdbx.NativeMethods4JDK.convertStringsToValues(NativeMethods4JDK.java:3599)

at superwaba.ext.xplat.sql.pdb.pdbx.NativeMethods4JDK.pdbdriverDoInsert(NativeMethods4JDK.java:1219)

at superwaba.ext.xplat.sql.pdb.pdbx.NativeMethods4JDK.pdbdriverParseInsert(NativeMethods4JDK.java:1384)

at superwaba.ext.xplat.sql.pdb.pdbx.PDBDriver.executeUpdate(PDBDriver.java:117)

at InspecaoDAO.insertInspecao(InspecaoDAO.java:37)

at FormTiposDeFichaDeInspecao.onEvent(FormTiposDeFichaDeInspecao.java:163)

at waba.ui.Control.postEvent(Control.java:542)

at waba.ui.ListBox.onEvent(ListBox.java:421)

at waba.ui.Control.postEvent(Control.java:542)

at waba.ui.Window._postEvent(Window.java:540)

at waba.applet.SWEventThread.handleOneEvent(SWEventThread.java:84)

at waba.applet.SWEventThread.run(SWEventThread.java:48)

at java.lang.Thread.run(Thread.java:534)

4 Respostas

R

Já tentou = ‘1’ ou = “1”?

N

já tentei também. dá incompatible types e um monte de erro!

8O

D

você está fazendo uma consulta de acordo com dois parâmetros, os dois são strings?

Olhe o seu ultimo parâmetro veja se é realmente int no banco.
e o primeiro, veja se o que está chegando na sua variável não seja uma string (caracter).

Mas pela mensagem a consulta espera uma “string” e não está chegando…

S

Olha é só uma opinião! :oops:
Mas se eu fosse vc, usaria o firebird que é muito melhor, que esta base de dados tranqueira da micro$oft! :wink:
Mas que é um erro doido é!
Fui…
:telazul:

Criado 19 de agosto de 2005
Ultima resposta 19 de ago. de 2005
Respostas 4
Participantes 4