语法错误:
if button1.Caption:='no' then
改为:
if button1.Caption='no' then
就可以了。

解决方案 »

  1.   

    在每个字段的OnValidate下拦截类似这样:
    procedure TForm_DM.ADODPatient_AgeValidate(Sender: TField);
    begin
      if ADODPatient_Age.Value > 200 then
        raise Exception.Create('年龄不应该这么大。');
    end;
      

  2.   

    在表的onpost或者beforepost事件中进行检查
      

  3.   

    建表时用UNIQUE对该字段作唯一性检查
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    if dbgrid1.readonly=false then
      DBGrid1.readonly:=true;
    else
      DBGrid1.readonly:=false;  
    end;
    不是吧,只是逻辑问题我认为
    这样好吗??跟BUTTON的CAPTION
    属性有关系吗?》》
      

  5.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    if button1.Caption:='no' then
    begin
      DBGrid1.Options := DBGrid.Options + [dgEditing];
      button1.Caption:='ok';
    end
    else
    begin
      DBGrid1.Options := DBGrid.Options - [dgEditing];
      button1.Caption:='no';
    end;
      

  6.   

    谢放各位,我主要是想知道怎样在DBGrid里修改数据时验证数据的正确性,例如我的表里有一个字段的各条纪录是不可以重复的,请问验证这个怎样做呢?