我在一个DBGrid中设置如果按下DEL键就删除信息,代码如下
  if KEY=46 then begin
     For p:=0 to DBGrid1.SelectedRows.Count-1 do begin
        DBGrid1.DataSource.DataSet.GotoBook(Pointer(DBGrid1.SelectedRows.Items[p]));
        DBGrid1.DataSource.DataSet.Delete;
     end;
  end;
为什么按下以后会提示说,没有更新或刷新的键列信息?
谁能告诉我,谢谢了 ...

解决方案 »

  1.   

    是不是没有用locate定位要删得列
    或者你的DBGrid的datasource是临时数据源
      

  2.   

    to mastersky(浪)我用的是ADO,我没有重复的数据,而且也没有主键,都是外键,是一个临时表中的数据,就是可以进行删除的操作,我做别的时候都是用按钮删除的,是没有问题的,就是用了这个DEL以后就会出现这个问题不知道那里出问题了..
    谢谢~!
      

  3.   

    但是我试过你的代码,也是用ado,没有出错啊.你的外键是逻辑的还是实际定义的?
      

  4.   

    科室删除了就不是我想要的了 ,做别的也是好用的,就是从按钮转换到DEL键...
    唉...
    再看吧..
    谢谢你了,分会给你的..谢谢`