public int UpdataUser(int nUserID, string sShowname, string sBpname, string sXingMing, string sPhone, string sR)
    {   
        //定义SQL语句
        string cmdText = UPDATEUSER 
            + "'" + sShowname + "',"
            + "'" + sBpname + "',"
            + "'" + sXingMing + "',"
            + "'" + sPhone + "',"
            + "'" + sR + "'"
            + "WHERE Uid=" + "'" 
            + nUserID.ToString() + "'";
        int nResult = SqlHelper.ExecuteNonQuery(ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ConnectionString,
            CommandType.Text, cmdText);
        return nResult;
上面这些语句,请问下哪里有错误,如果我只写一条  + "'" + sShowname + "'"  ,就没错,但加了,号就无效。

解决方案 »

  1.   

    "'" + sShowname + "',"    sShowname = ‘AAA’
    + "'" + sBpname + "',"    sBpname = ‘BBB’结果是:'AAA''BBB'
    看明白了么?,少个逗号吧。附:sqlserve最好别用  单引号
      

  2.   

    update语句是update table set [字段名]=...,[字段名]=... where...
    LZ写的看不懂啊。
      

  3.   

     string cmdText = UPDATEUSER 
    请问这是什么意思
      

  4.   

    引用SqlHelper类就是这效果,错了都不知哪错的。
      

  5.   


        private static readonly string UPDATEUSER = "UPDATE LoadUser SET ShowName=,BPName=,XingMing=,Phone=,R=";
    刚忘写这个了5楼的兄弟,就是用的sqlhelper类
    很郁闷,就是更新不了,
    如果只有一个字段就不会出问题,多个字段就出问题了
      

  6.   

    Sql拼接看着真是累啊
    在事件探测器中看看实际执行的Sql语句,就知道啥问题了
      

  7.   

    sqlhelper类,降低了代码的可读性,增加了调试难度,执行效率低。(1)一个存取过程在两个文件中实现,可读性差。
    (2)调试过程中,如果报错,没有在一个文件中,排错时,不能集中处理,跳来跳去.
    (3)一个简单的保存过程:TextBox.Text --> SQL参数 --> CMD写库
      你跟踪一下就知道了,sqlhelper类,多用一层,还循环。我是接受不了这东西,做项目时从来不用它。
      

  8.   

    string sql= "UPDATE LoadUser SET ShowName='" +sShowname+ "', BPName='"+sBpname+ "' , XingMing='" + sXingMing + "',Phone='" + sPhone + "',R='" + sR + "' 
    WHERE Uid= '" + nUserID.ToString() + "' " ; 至少sql的语法你得保证正确..