我想通过存储过程查询出一个表中的所有信息,查询是通过输入别一个表的一个字段,这两个表有一个关联字段.
然后根据这个表中一个字段的信息,看能否修改.例如,一个字段有三种情况:1,2,3,当为3了时就不能修改,为其它两个情况时就能修改.
我想把查询结果在gridview中显示.然后再在上面修改.
说明一下,此查询只显示一条记录.输入的字段是不重复.

解决方案 »

  1.   

    1先查询得到表A中的字段(包含1,2,3值的那个表)
    比如select 字段 from 表
    然后用SqlCommand得到该值
    2 创建一个存储过程接受一个参数
    比如Create proc test
    @type int,
    @Mes bit out//好象是
    as 
    if @type <>3
    begin
    select @Mes =1
    end
    else
    begin
    select @Mes =0 
    end 
    如果再在程序中执行这个存储过程,根据得到的值来设置DataGridView.AllowUpdate的属性
      

  2.   

    前面的我都会设置,就是最后那个DataGridView.AllowUpdate不知道怎么弄
      

  3.   

    SqlCommand cmd = new SqlCommand(查询语句,连接);
    cmd.Parameter.Add(new SqlParameter("@Mes",System.Data.SqlDbType.Bit));
    cmd.Parameter["@Mes"].Direction =ParameterDirection.Output;
    cmd.ExecuteNonQuery();
    然后
    DataGridView.AllowUpdate = (bool)cmd.Parameter["@Mes"].Value;
      

  4.   

    SqlCommand cmd = new SqlCommand(查询语句,连接); 
    cmd.Parameter.Add(new SqlParameter("@Mes",System.Data.SqlDbType.Bit)); 
    cmd.Parameter["@Mes"].Direction =ParameterDirection.Output; 
    cmd.ExecuteNonQuery(); 
    然后 
    DataGridView.AllowUpdate = (bool)cmd.Parameter["@Mes"].Value;
      

  5.   

    这个当时,我也设置了.但是当点击gridview上的编辑按钮时,进入编辑模式时,怎么样把修改的数据写入数据库中呀
      

  6.   

    gridview 没有AllowUpdate这个属性呀
      

  7.   

    你写一个 gridview的 update  放在 编辑按钮下不就可以饿。。