string newsql = string.Format("update t_history set time = time, type = type, text = text, name = name, number = number");你上面这条语句没作用。你这里应该是INSRET INTO 语句。

解决方案 »

  1.   

    拼接字符串,直接上代码string newsql = string.Format("update t_history set time = '{0}', type = '{1}', text = '{2}', name = '{3}', number = '{4}'",time,type,text,name,number);另多说以句,你update的t_history表怎么连条件都不写,好歹加个where,一条数据的话不影响,多数据的话。。你懂得。。
      

  2.   


    嗯,大神,我现在改成下面这样了。。你看下啊 string newsql = string.Format("insert into t_history (time,type,text,name,number )values(time,type,text,name,number)");
                SqlCommand newcmd = new SqlCommand(newsql, sqlConnection);
                SqlDataAdapter newdata = new SqlDataAdapter();
                newdata.InsertCommand = newcmd;
                newcmd.ExecuteNonQuery();//执行到此出错,错误如下图执行最后一句出现如下错误
      

  3.   


    嗯 谢谢。我现在改成如下: string newsql = string.Format("insert into t_history (time,type,text,name,number )values(time,type,text,name,number)");
                SqlCommand newcmd = new SqlCommand(newsql, sqlConnection);
                SqlDataAdapter newdata = new SqlDataAdapter();
                newdata.InsertCommand = newcmd;
                newcmd.ExecuteNonQuery();//执行到此出错。错误提示。在此上下文中不允许使用'time'。此处只允许使用常量、表达式或变量。不允许使用列名。
    为什么啊
      

  4.   


    string newsql = string.Format("insert into t_history ([time],[type],[text],[name],[number]) values ('{0}','{1}','{2}','{3}','{4}')");
    SqlCommand newcmd = new SqlCommand(newsql, sqlConnection);
    SqlDataAdapter newdata = new SqlDataAdapter();
    newdata.InsertCommand = newcmd;
    newcmd.ExecuteNonQuery();
      

  5.   

    忘加参数string newsql = string.Format("insert into t_history ([time],[type],[text],[name],[number]) values ('{0}','{1}','{2}','{3}','{4}')",time,type,text,name,number);