Pessoal to tentando esse código com banco SQLite
e está dando o erro::
Query does not return results
Código:
JOptionPane.showMessageDialog(null,"Texto : " + OBS /*+ "\n" + value1*/);
//insert
String sql = "INSERT INTO minha_tabela (OBSERVACOES)" + "values ('"+OBS+"')";
// update
//String sql ="UPDATE minha_tabela SET OBSERVACOES='"+OBS+"' WHERE id='" "' "; //where
id=1";
O que eu poderia fazer para atualizar minha tabela? alguma ideia?
Posta o método de persistência(cadastrar) e de merge(atualizar) ae.
E qual banco você está usando?
Seria esse mesmo para cadastrar e o outro para atualizar, estou mostrando a linha do SQL que retorna o erro citado na pergunta, esta dentro do try{};
private void gravaFarActionPerformed(java.awt.event.ActionEvent evt)
{
conn = ConnjavaPanel.ConnectDBa();
try
{
String value1 = campo1.getText();
String value2 = campo2.getText();
...
String OBS = campoObservacoes.getText();
JOptionPane.showMessageDialog(null,"Texto : " + OBS );
//insert
String sql = "INSERT INTO minha_tabela (OBSERVACOES)" + "values ('"+OBS+"')";
// update
//String sql ="UPDATE minha_tabela SET CAMPOTABELA1='"+campo1+"'
,CAMPOTABELA2='"+campo2+"' ,
OBSERVACOES='"+OBS+"' WHERE id='" "' ";
// já tentei outros métodos sem sucesso
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null, e);
}
}
Tenta trocar o pst.executeQuery(); por pst.executeUpdate();
Tenta colocar o código com as tags, ta meio ruim de ler.
Pelo que entendi do seu código: você quer inserir, e depois atualizar outra tabela. Depois dar um select com as atualizações, certo?
Faça separado isso.
INSERT, UPDATE, DELETE -> executeUpdate(), SELECT -> executeQuery()
query does not return results, não vai retornar mesmo, você não está dando um select e sim insert/update.
só vou atualizar pelos dados vindos do form
Então tem de ser com executeUpdate().
1 curtida
Spencer_Ekroth:
//String sql =“UPDATE minha_tabela SET CAMPOTABELA1=’”+campo1+"’
,CAMPOTABELA2=’"+campo2+"’ ,
OBSERVACOES=’"+OBS+"’ WHERE id=’" "’ ";
// já tentei outros métodos sem sucesso
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
O sintaxe que resolveu meu problema foi conseguido com algumas dicas dos colegas, estou colocando a solução encontrada no intuito de auxiliar quem possa:
`String sql =“UPDATE minha_tabela SET CAMPOTABELA1=’”+campo1+"’
,CAMPOTABELA2=’"+campo2+"’ ,
OBSERVACOES=’"+OBS+"’ WHERE id=1;
Pode também resgatar o id com ? mas ai já é outra questão, no meu caso usei assim e deu certo.
pst = conn.prepareStatement(sql);
pst.executeUpdate();`
1 curtida