日期:2014-05-18  浏览次数:20467 次

新手求救!!!
大家好,我在调试系统时在cmd.ExecuteNonQuery()处出现了一个问题,请大家帮帮忙!!!
我做的是一个投票系统,表结构如下:
voteID(投票主题ID),voteDetailsID(某一投票主题的各项内容ID),voteItem(投票内容,如某某选举人),voteNum(票数)

这个是点击 "投票 "按钮的代码
protected   void   btnVote_Click(object   sender,   EventArgs   e)
        {
                SqlConnection   con   =   DB.creatConnection();
                con.Open();
                SqlCommand   cmd=new   SqlCommand();
                cmd.Connection=con;
                cmd.CommandText= "updata   voteDetails   set   voteNum=voteNum+1   where   voteID= "+voteID+ "   and   voteDetailsID= "+this.rBtnItem.SelectedValue.ToString();
                cmd.ExecuteNonQuery();
                con.Close();                
        }


提示错误如下:
“/vote”应用程序中的服务器错误。
--------------------------------------------

'= '   附近有语法错误。  
说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。  

异常详细信息:   System.Data.SqlClient.SqlException:   '= '   附近有语法错误。

源错误:  


行   51:                   cmd.Connection=con;
行   52:                   cmd.CommandText= "updata   voteDetails   set   voteNum=voteNum+1   where   voteID= "+voteID+ "   and   voteDetailsID= "+this.rBtnItem.SelectedValue.ToString();
行   53:                   cmd.ExecuteNonQuery();
行   54:                   con.Close();
行   55:                   //SqlDataReader   sdr
 

源文件:   c:\Inetpub\wwwroot\vote\vote.aspx.cs         行:   53  


------解决方案--------------------
voteDetailsID= "+this.rBtnItem.SelectedValue.ToString()+ " ";

试试
------解决方案--------------------
updata voteDetails set voteNum=1 where voteID= ' "+voteID+ " ' and voteDetailsID= ' "+this.rBtnItem.SelectedValue.ToString()+ " '

把这个sql语句中的变量都改为需要用的值在查询分析器中执行。如果有问题就是你的sql语句有问题,如果没问题就是你的变量有问题。
------解决方案--------------------
才看见,你的updata(应该是 update) 写错了!!!!!