我的gridview怎么点击 删除/编辑/更新 改变不了数据呢?
而且还没有任何错误提示这个是为什么呢?在sqldatasource里面,我的updatecommand是这样写的:update beta set name=@name where id=@id
id是beta表的主键,gridview里面也将id列入Datakeynames,请问问题出在哪里?
是不是参数那里呢? 

解决方案 »

  1.   

    看看http://dotnet.aspx.cc/
    因该有你的答案!
      

  2.   

    是不是数据源中没有写入DeleteText中的Sql语句
      

  3.   

    操作后,数据库表里面没有发生任何改变。
    updatecommand,deletecommand都写了。
    奇怪的是,updatecommand改写为update beta set name="aka" 数据表就可以修改了,可变为
    update beta set name="aka" where id=@id就不行,我感觉应该是参数的问题,急死我了!
      

  4.   

    update beta set name="aka" where id=@original_id
    这样呢?
      

  5.   

    update beta set name=@name where id=@id
    这句话问题出在哪里?
      

  6.   

    我又尝试添加了
    deletecommand语句,
    DELETE from beta where id=@original_id,结果能成功,

    update beta set name=@name where id=@original_id,怎么都没反应。
    为什么啊
      

  7.   

    补充:我把updatecommand更改为
    update beta set name=@name
    居然整name列的值都清变成了null。
      

  8.   

    应该是@name的问题,改成name='ddd'看看是否更新了
      

  9.   

    有没有注意到Page.IsPostBack,你可以跟踪一下阿
      

  10.   

    Page.IsPostBack没有问题。
    我把语句改为
    update beta set name='aka',name列的所有值全部被替换成aka;
    改为
    update beta set name='aka' where id=@original_id列的所有值不发生更新;
    改为
    update beta set name=@name where id=@original_id列的所有值也不发生更新;
    改为
    update beta set name=@name,输入新的name值,整name列的值都清变成了null;deletecommand语句:DELETE from beta where id=@original_id,结果完全成功。
      

  11.   

    update beta set name='aka' where id=@original_id
    ===
    试一下,把后面的original_id换成一个具体的值.
    例:
    update beta set name='aka' where id=1
    ==
    传值后手动看一下数据库中是否有和name,original_id值同等的记录
    Select * from beta where name=name and id=original_id
      

  12.   

    把updatecommand改成insertcommand就可以了
      

  13.   

    把删除/更新/编辑这些操作的代码块捕捉一个异常试试,在catch语句里一定要输出详细的异常信息,不要为空.我前面就遇到这种问题,编译通过,执行时结果有异常,最后查出来了,好浪费时间啊