一个简单的删除问题
while  dmsl.query2.locate('shul','',[]) do
dmsl.query2.delete;
shul为数值型删除出错,字符型正确。不知shul为数值型怎么写?

解决方案 »

  1.   

    while  dmsl.query2.locate('shul',10,[]) do
    dmsl.query2.delete;
      

  2.   

    你要注意到query的locate方法,第一个参数是存放字段名,第二参数是具体要查的数值,因为你要查是数值,所以要像chectry给出的那样,给出数值,你原来是给出'',是空字符串,显然不对.
    且要注意,若是查浮点型的,该种方法不是太好,不一定能查的到,因看的浮点型
    值是近似值.
      

  3.   


    while  dmsl.query2.locate('shul',10,[]) do
    dmsl.query2.delete;shul为数值型。不知shul为空怎么写?
      

  4.   

    while  dmsl.query2.locate('shul',null,[]) do
    dmsl.query2.delete;
      

  5.   

    to chechy(为程序而奋斗) ( ) 信誉:100  2002-10-28 09:22:00  得分:0 
     
     
      while  dmsl.query2.locate('shul',null,[]) do
    dmsl.query2.delete;
     好象出错
     
      

  6.   

    while dms1.query2.fieldbyname('shul').isnull do
      dms1.query2.delete
      

  7.   

    错了
    while not dms1.query2.eof do
    begin
      if dms1.query2.fieldbyname('shul').isnull then
        dms1.query2.delete;
      dms1.query2.next;
    end;
      

  8.   

    兄弟,: wang7982() 所言极是,数值不能为空呀。
      

  9.   

    我想把数值为空的删除。
    删除while  dmsl.query2.locate('shul',10,[]) do
    dmsl.query2.delete;shul为数值型。不知shul为空怎么删除?