只要你没有指定数据库中的某些字段不能为空
而你又没有赋值
看上面的程序好像是没有问题的
你可以try,catch Update那句,然后看报什么错

解决方案 »

  1.   

    2个问题:
      DocID是主键么?
      确定数据库中没有重复项了?
    1个建议:
      表名最好不要用"Table",虽然你加了[],但最好还是不要这样楼上的兄弟说的方法先试试,自己也加断点看看thisAdapter的UpdateCommand的情况
      

  2.   

    你要定义SqlDataAdapter的updatecommand.这样使用update()会好用
      

  3.   

    try,catch 一下
    看看报什么错
      

  4.   

    我定义了主键,想问问名字是Table有问题吗,加上[]是什么意思,数据库也没问题,请各位xdjm帮忙,2点就要检查了:(
      

  5.   

    table和description都是sql中定义的关键字,
    如果你使用关键字来定义字段,那么在使用sql语句的时候,相应的字段名要加上[],如果
    table是你定义的一个字段,那么写的时候就要写成
    select * from yourtable where [table]='youchoose'
      

  6.   

    楼主使用SqlCommandBuilder thisBuilder = new SqlCommandBuilder(thisAdapter);
    自动生成了Delete、Update、Instert语句。
    楼主单步调试一下,看看他生成的语句是否有问题。