我的界面上有两个textbox。输入两个数字更新数据库,表1有2个字段sendnow,sendold
我的程序如下:
int send1 = convert.ToInt16(textbox1.text);
int send2 = convert.ToInt16(textbox2.text);
update 表1 set sendnow +=send1,sendold = send2
程序老是报错,这个语句该如何写了,另外我的sendnow,sendold开始为空的,插入第一条的时候要不要考虑为空

解决方案 »

  1.   

    没有where ?
    update table set sendnew = send1, sendold = send2 where ....
      

  2.   

    where没写,这个肯定有了
      

  3.   

    1)sendnow +=send1里面这个+去掉
    2)如果开始时没有数据,要先添加后修改
      

  4.   


    没有where应该也只是把所有的数据都更改了啊\? 并不会报错啊应该是+=不太好用  只能是sendnew=sendnew+send1
      

  5.   

    string sql = string.Format("update 表1 set sendnow=sendnow+{0},sendold={1} where ...",send1,send2);
      

  6.   

    如果send1,sendold都是数字的话,如下
    string sql="update 表1 set sendnow = sendnow "+ send1+",sendold = " send2+" where ...";
      

  7.   

    如果开始字段默认为空,是不能够这么写的更新时,sendnow 字段应该有默认值才行。
      

  8.   

    int send1 = convert.ToInt16(textbox1.text);
    int send2 = convert.ToInt16(textbox2.text);
    string sql="update 表1 set sendnow =isnull(sendnow,0)+ "+send1+",sendold = '"+send2+"' where...";
      

  9.   

    sql 能用 +=update tb_pro_info set hot=hot+10 where id='00031'