• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

nelsondac

[RESOLVIDO]sintaxe do update dá erro...

11 mensagens neste tópico

boas. ja fiz imensos updates mas nos ultimos tenho ido asar...

já copiei e colei de varios alterando o necessário mas dá erro...

a sintaxe é :

string strOle = string.Format("UPDATE LogIn SET Password = '" +  password + "' WHERE LogInID = '" + loginid + "'");

o erro que dá é

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.OleDb.OleDbException: Erro de sintaxe na instrução UPDATE.

Source Error:

Line 211:        using (OleDbCommand cmd = new OleDbCommand(strSQL, this.oleCn))

Line 212:        {

Line 213:            cmd.ExecuteNonQuery();

Line 214:        }

Line 215:    }

Source File: d:\WebSites\estagio\C\WebSite2\App_Code\Class1.cs    Line: 213

Stack Trace:

[OleDbException (0x80040e14): Erro de sintaxe na instrução UPDATE.]

   System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) +177

   System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) +194

   System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) +56

   System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) +105

   System.Data.OleDb.OleDbCommand.ExecuteNonQuery() +88

   Class1.myExecute(String strSQL) in d:\WebSites\estagio\C\WebSite2\App_Code\Class1.cs:213

   Class1.insertData(String strOle) in d:\WebSites\estagio\C\WebSite2\App_Code\Class1.cs:45

   Class1.updatePassword(String loginid, String password) in d:\WebSites\estagio\C\WebSite2\App_Code\Class1.cs:124

   cliente_Default2.ButtonOK_Click(Object sender, EventArgs e) in d:\WebSites\estagio\C\WebSite2\cliente\AlterarPassword.aspx.cs:35

   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +75

   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +97

   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7

   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11

   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33

   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4919

a pagina é ASP.NET. mas o erro é no SQL... os valores são todos string não percebo o erro...

obrigado pela ajuda. fkb

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já tentaste executar a query directamente na BD?

Dá para colocares aqui só a string da query?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

esqueci-me de dizer... isto é em Access...

não percebo é porque ele dá o erro, em debug mode o que manda para a base de dados é:

"UPDATE LogIn SET Password = 'asdf' WHERE LogInID = 'asd'"

fkb

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tenta:

"UPDATE LogIn SET Password='asdf' WHERE LogInID='asd'"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

TheGlorious obrigado pela ajuda, mas... nada! raios partam o gajo porra...

dá a entender que ele não encontra o 'asd' no LogInID... mas ele está lá... já andei com trim e com toString e tal mas não dá-...

dá erro da sintaxe ... obrigado na mesma... fkb

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Apaga a consulta e faz de novo..

Por vezes fazemos erros que não encontramos..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desconhecia isso.

Mas, 'todos os dias aprendemos algo' (:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Com já coloquei em outro fórum: é por isso que se devem colocar o nome dos campos entre chavetas.

Assim funciona:

"UPDATE LogIn SET [Password] = 'asdf' WHERE [LogInID] = 'asd'"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora