Update

5 respostas
F

Oi pessoal,

Estou com problemas para atualizar a minha tabela!!!Alguem pode me ajudar???? Codigo:
SQL2 =
		" Update contas set "
				+ "'descricao = '"
				+ descricao
				+ "', sistema ='"
				+ sistema
				+ "', lancamento ='"
				+ lancamento
				+ "', cod_exercicio ='"
				+ exercicio
				+ "' where cod_conta =  '"
				+ cod_conta;	
try {
							stmt = con.createStatement();
							stmt.executeUpdate(SQL2);
							JOptionPane.showMessageDialog(
								null,
								"Atualização Efetuada com sucesso!",
								"Mensagem",
								JOptionPane.INFORMATION_MESSAGE);
						} catch (SQLException e) {
							   e.printStackTrace(); 
							//JOptionPane.showMessageDialog(
							//	null,
							//	"Erro no comando SQL de Atualizaçao!",
							//	"Mensagem",
							//	JOptionPane.ERROR_MESSAGE);

						}

Erro:


java.sql.SQLException: [Microsoft][Driver ODBC para Microsoft Access] Erro de sintaxe na instrução UPDATE.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.executeUpdate(Unknown Source)
at servicos.ServContas.Cadastrar(ServContas.java:102)
at negocios.Contas.CadastrarConta(Contas.java:40)
at interfaces.GuiContas$2.actionPerformed(GuiContas.java:171)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

Vale lembrar que apenas o atributo cod_exercicio e do tipo numérico os outros são do tipo String!!!

5 Respostas

J

Oi

fsf, é problema na hora de montar a sua query mesmo… Você já tentou executar esta query direto no Query Analyzer? É bom fazer uns testes antes.

T+

F

Executar direto no Query Analyzer!!Como Assim??

J

Oi

Query analyser, é o executor de query do do SQL Server…

:oops: :oops: xiii, foi mal, eu só vi lá Microsoft pensei que fosse o SQL Server, só agora que vi que era Access… Mas do mesmo, tem um lugar pra vc rodar as query direto no Access…

T+

V

Troque o SQL para isso

SQL2 =
      " Update contas set "
            + " descricao = '"
            + descricao
            + "', sistema ='"
            + sistema
            + "', lancamento ='"
            + lancamento
            + "', cod_exercicio ='"
            + exercicio
            + "' where cod_conta =  '"
            + cod_conta + "'";

Repare que não existe aspa simples antes de " descricao = " e existe aspas apos cod_conta. :wink:

F

Valeu Vinci!!! :lol:

Criado 20 de março de 2005
Ultima resposta 20 de mar. de 2005
Respostas 5
Participantes 3