首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

update的有关问题

2012-02-20 
update的问题StringsCodeabc StringstrConn//数据库地址OleDbConnectionConnnewOleDbConnection(strC

update的问题
String   sCode   =   "abc "
  String   strConn   =   //数据库地址
  OleDbConnection   Conn   =   new   OleDbConnection(strConn);
  Conn.Open();
  String   strSQL   =   "update   [Login]   set   passWord= ' "   +   chPwd.Text   +   " '   ,studCode= ' "   +   sCode   +   " '   where   studCode= ' "   +   sCode   +   " ' ";
  OleDbCommand   Cmd   =   new   OleDbCommand(strSQL,   Conn);
  Cmd.ExecuteNonQuery();
  Conn.Close();
——————————用上面的语句update出错——————————
用户代码未处理   System.Data.OleDb.OleDbException
    Message= "UPDATE   语句的语法错误。 "
    Source= "Microsoft   JET   Database   Engine "
    ErrorCode=-2147217900
    StackTrace:
              在   System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS   dbParams,   Object&   executeResult)
              在   System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object&   executeResult)
              在   System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior   behavior,   Object&   executeResult)
              在   System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior   behavior,   String   method)
              在   System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
              在   Chax.Button1_Click(Object   sender,   EventArgs   e)   位置   c:\Documents   and   Settings\xhy\My   Documents\Visual   Studio   2005\WebSites\WebSite1\Chax.aspx.cs:行号   28
              在   System.Web.UI.WebControls.Button.OnClick(EventArgs   e)
              在   System.Web.UI.WebControls.Button.RaisePostBackEvent(String   eventArgument)
              在   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String   eventArgument)
              在   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler   sourceControl,   String   eventArgument)
              在   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection   postData)
              在   System.Web.UI.Page.ProcessRequestMain(Boolean   includeStagesBeforeAsyncPoint,   Boolean   includeStagesAfterAsyncPoint)


[解决办法]
SQL语句有错误。
断点,调试。追到SQL语句的时候OleDbCommand Cmd = new OleDbCommand(strSQL, Conn);
把strSQL语句追出来,用别的数据库软件,比如SQL Explor或SQLserver的查询分析器执行一下,看报什么错。像你这个一般应该是表名不存在或者字段类型的问题。
[解决办法]
String strSQL = "update [Login] set [passWord]= ' " + chPwd.Text + " ' ,studCode= ' " + sCode + " ' where studCode= ' " + sCode + " ' ";

如果用的是ACCESS,password是关键字,要用[]包起来
[解决办法]
楼上的提醒的对,关键字是需要包起来,好像LZ用的是Access吧?我记得SqlServer的关键字也不能直接用。


[解决办法]
同樓上﹐中括號括起這些關鍵字
String strSQL = "update [Login] set [passWord]= ' " + chPwd.Text + " ' ,studCode= ' " + sCode + " ' where studCode= ' " + sCode + " ' ";

热点排行