With dm.ADOq do
begin
Close;
SQL.Clear;
SQL.Add('Select * From  weixiudan  Where no='''+edit3.Text+'''');
open;
try
Edit;    //修改记录
FieldByName('ren').AsString:=cb4.Text;
FieldByName('cj').AsString:=cb1.Text;
FieldByName('no').AsString:=Edit3.Text;
FieldByName('wangdianhao').AsString:=edit4.Text;
Post;
refresh;
showmessage('修改成功');
except
  showmessage('有误,请从新修改');
  end;
end;
我用这个程序修改表的一般字段都正确 ,修改表的主键NO时候不能修改,每次都会新建一行,怎么能直接修改 不新建一行记录?