如题
每次提交时,如果删除了某个内容就会提示,不能为零长度字符串,我不想去改库结构,不知如何解决此问题最简单?
delphi7+access2002
谢谢
有其他解决办法的也请赐教!

解决方案 »

  1.   

    DataSource.OnChange:if (Sender <> NIL) AND (FIeld<>NIL) AND (VarToStr(Field.Value)='') then
     begin
       ShowMessage('error!');
       Abort; 
     end;
    大致是这样,没有测试。
      

  2.   

    有法让它自动将字符串类型的字段中的空字符转化为null,然后再提交吗?
      

  3.   

    if (Sender <> NIL) AND (FIeld<>NIL) AND (VarToStr(Field.Value)='') and (not VarIsNull(Field.Value)) then
     begin
       Field.Value= NULL;
     end;
      

  4.   

    procedure Tform1.DBGridEh1ColExit(Sender: TObject);
    begin
    if (dbgrideh1.SelectedField.DataType=ftwideString) or (dbgrideh1.SelectedField.DataType=ftString)  then
    beginadoquery1.First;
    while not adoquery1.Eof do
    begin
    if dbgrideh1.SelectedField.AsString=''  then
    begin
    adoquery1.Edit;
    dbgrideh1.SelectedField.Value:=null;
    end;
    adoquery1.Next;
    end;
    end;
    end;
      

  5.   

    windindance(风舞轻扬) 你的方法真牛!!
    3x everybody!
      

  6.   

    不过Field.Value= NULL;应该是Field.Value:= NULL;呵呵