Ir para o conteúdo
nelsondac

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

Mensagens Recomendadas

nelsondac    0
nelsondac

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

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
nelsondac    0
nelsondac

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

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
nelsondac    0
nelsondac

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

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
jpaulino    106
jpaulino

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'"

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


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade